# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2013, Various
# This file is distributed under the same license as the Elgg package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Elgg 1.12\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-05-10 10:13+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: ../../contribute/code.rst:2
msgid "Writing Code"
msgstr ""

#: ../../contribute/code.rst:4
msgid "Understand Elgg's standards and processes to get your changes accepted as quickly as possible."
msgstr ""

#: ../../contribute/code.rst:11
msgid "License agreement"
msgstr ""

#: ../../contribute/code.rst:13
msgid "By submitting a patch you are agreeing to license the code under a `GPLv2 license`_ and `MIT license`_."
msgstr ""

#: ../../contribute/code.rst:20
msgid "Pull requests"
msgstr ""

#: ../../contribute/code.rst:22
msgid "Pull requests (PRs) are the best way to get code contributed to Elgg core. The core development team uses them even for the most trivial changes."
msgstr ""

#: ../../contribute/code.rst:25
msgid "For new features, `submit a feature request <https://github.com/Elgg/Elgg/issues>`__ or `talk to us`_ first and make sure the core team approves of your direction before spending lots of time on code."
msgstr ""

#: ../../contribute/code.rst:31
msgid "Checklists"
msgstr ""

#: ../../contribute/code.rst:33
msgid "Use these markdown checklists for new PRs on github to ensure high-quality contributions and help everyone understand the status of open PRs."
msgstr ""

#: ../../contribute/code.rst:36
msgid "Bugfix PRs:"
msgstr ""

#: ../../contribute/code.rst:46
msgid "Feature PRs:"
msgstr ""

#: ../../contribute/code.rst:58
msgid "Choosing a branch to submit to"
msgstr ""

#: ../../contribute/code.rst:60
msgid "The following table assumes the latest stable release is 1.9."
msgstr ""

#: ../../contribute/code.rst:63
msgid "Type of change"
msgstr ""

#: ../../contribute/code.rst:63
msgid "Branch to submit against"
msgstr ""

#: ../../contribute/code.rst:65
msgid "Security fix"
msgstr ""

#: ../../contribute/code.rst:65
msgid "1.8 (Email security@elgg.org first!)"
msgstr ""

#: ../../contribute/code.rst:66
msgid "Bug fix"
msgstr ""

#: ../../contribute/code.rst:66
msgid "1.9"
msgstr ""

#: ../../contribute/code.rst:67
msgid "Deprecation"
msgstr ""

#: ../../contribute/code.rst:67
#: ../../contribute/code.rst:68
msgid "1.x"
msgstr ""

#: ../../contribute/code.rst:68
msgid "Minor feature"
msgstr ""

#: ../../contribute/code.rst:69
msgid "Major feature"
msgstr ""

#: ../../contribute/code.rst:69
#: ../../contribute/code.rst:70
msgid "master"
msgstr ""

#: ../../contribute/code.rst:70
msgid "Breaking"
msgstr ""

#: ../../contribute/code.rst:73
msgid "The difference between minor and major feature is subjective and up to the core team."
msgstr ""

#: ../../contribute/code.rst:76
msgid "Commit message format"
msgstr ""

#: ../../contribute/code.rst:78
msgid "We require a particular format to allow releasing more often, and with improved changelogs and source history. Just follow these steps:"
msgstr ""

#: ../../contribute/code.rst:81
msgid "Start with the ``type`` by selecting the *last category which applies* from this list:"
msgstr ""

#: ../../contribute/code.rst:83
msgid "**docs** - *only* docs are being updated"
msgstr ""

#: ../../contribute/code.rst:84
msgid "**chore** - this include refactoring, code style changes, adding missing tests, Travis stuff, etc."
msgstr ""

#: ../../contribute/code.rst:85
msgid "**perf** - the primary purpose is to improve performance"
msgstr ""

#: ../../contribute/code.rst:86
msgid "**fix** - this fixes a bug"
msgstr ""

#: ../../contribute/code.rst:87
msgid "**deprecate** - the change deprecates any part of the API"
msgstr ""

#: ../../contribute/code.rst:88
msgid "**feature** - this adds a new user-facing or developer feature"
msgstr ""

#: ../../contribute/code.rst:89
msgid "**security** - the change affects a security issue in any way. *Please do not push this commit to any public repo.* Instead contact security@elgg.org."
msgstr ""

#: ../../contribute/code.rst:91
msgid "E.g. if your commit refactors to fix a bug, it's still a \"fix\". If that bug is security-related, however, the type must be \"security\" and you should email security@elgg.org before proceeding. When in doubt, make your best guess and a reviewer will provide guidance."
msgstr ""

#: ../../contribute/code.rst:95
msgid "In parenthesis, add the ``component``, a short string which describes the subsystem being changed."
msgstr ""

#: ../../contribute/code.rst:97
msgid "Some examples: \"views\", \"i18n\", \"seo\", \"a11y\", \"cache\", \"db\", \"session\", \"router\", \"<plugin_name>\"."
msgstr ""

#: ../../contribute/code.rst:99
msgid "Add a colon, a space, and a brief ``summary`` of the changes, which will appear in the changelog."
msgstr ""

#: ../../contribute/code.rst:101
msgid "No line may exceed 100 characters in length, so keep your summary concise."
msgstr ""

#: ../../contribute/code.rst:104
msgid "Good summary"
msgstr ""

#: ../../contribute/code.rst:104
msgid "Bad summary (problem)"
msgstr ""

#: ../../contribute/code.rst:106
msgid "page owners see their own owner blocks on pages"
msgstr ""

#: ../../contribute/code.rst:106
msgid "bug fix (vague)"
msgstr ""

#: ../../contribute/code.rst:107
msgid "bar view no longer dies if 'foo' not set"
msgstr ""

#: ../../contribute/code.rst:107
msgid "updates views/default/bar.php so bar view no longer... (redundant info)"
msgstr ""

#: ../../contribute/code.rst:108
msgid "narrows river layout to fit iPhone"
msgstr ""

#: ../../contribute/code.rst:108
msgid "alters the river layout (vague)"
msgstr ""

#: ../../contribute/code.rst:109
msgid "elgg_foo() handles arrays for $bar"
msgstr ""

#: ../../contribute/code.rst:109
msgid "in elgg_foo() you can now pass an array for $bar and the function will... (move detail to description)"
msgstr ""

#: ../../contribute/code.rst:110
msgid "removes link color from comments header in river"
msgstr ""

#: ../../contribute/code.rst:110
msgid "fixes db so that... (redundant info)"
msgstr ""

#: ../../contribute/code.rst:111
msgid "requires non-empty title when saving pages"
msgstr ""

#: ../../contribute/code.rst:111
msgid "can save pages with no title (confusingly summarizes old behavior)"
msgstr ""

#: ../../contribute/code.rst:114
msgid "(recommended) Skip a line and add a ``description`` of the changes. Include the motivation for making them, any info about back or forward compatibility, and any rationale of why the change had to be done a certain way. Example:"
msgstr ""

#: ../../contribute/code.rst:117
msgid "We speed up the Remember Me table migration by using a single INSERT INTO ... SELECT query instead of row-by-row. This migration takes place during the upgrade to 1.9."
msgstr ""

#: ../../contribute/code.rst:120
msgid "Unless your change is trivial/obvious, a description is required."
msgstr ""

#: ../../contribute/code.rst:122
msgid "If the commit resolves a GitHub issue, skip a line and add ``Fixes #`` followed by the issue number. E.g. ``Fixes #1234``. You can include multiple issues by separating with commas."
msgstr ""

#: ../../contribute/code.rst:125
msgid "GitHub will auto-close the issue when the commit is merged. If you just want to reference an issue, use ``Refs #`` instead."
msgstr ""

#: ../../contribute/code.rst:128
msgid "When done, your commit message will have the format:"
msgstr ""

#: ../../contribute/code.rst:141
msgid "Here is an example of a good commit message:"
msgstr ""

#: ../../contribute/code.rst:153
msgid "To validate commit messages locally, make sure ``.scripts/validate_commit_msg.php`` is executable, and make a copy or symlink to it in the directory ``.git/hooks/commit-msg``."
msgstr ""

#: ../../contribute/code.rst:162
msgid "Rewriting commit messages"
msgstr ""

#: ../../contribute/code.rst:163
msgid "If your PR does not conform to the standard commit message format, we'll ask you to rewrite it."
msgstr ""

#: ../../contribute/code.rst:165
msgid "To edit just the last commit:"
msgstr ""

#: ../../contribute/code.rst:167
msgid "Amend the commit: ``git commit --amend`` (git opens the message in a text editor)."
msgstr ""

#: ../../contribute/code.rst:168
msgid "Change the message and save/exit the editor."
msgstr ""

#: ../../contribute/code.rst:169
msgid "Force push your branch: ``git push -f your_remote your_branch`` (your PR with be updated)."
msgstr ""

#: ../../contribute/code.rst:171
msgid "Otherwise you may need to perform an interactive rebase:"
msgstr ""

#: ../../contribute/code.rst:173
msgid "Rebase the last N commits: ``git rebase -i HEAD~N`` where N is a number. (Git will open the git-rebase-todo file for editing)"
msgstr ""

#: ../../contribute/code.rst:175
msgid "For the commits that need to change, change ``pick`` to ``r`` (for reword) and save/exit the editor."
msgstr ""

#: ../../contribute/code.rst:176
msgid "Change the commit message(s), save/exit the editor (git will present a file for each commit that needs rewording)."
msgstr ""

#: ../../contribute/code.rst:177
msgid "``git push -f your_remote your_branch`` to force push the branch (updating your PR)."
msgstr ""

#: ../../contribute/code.rst:180
msgid "Testing"
msgstr ""

#: ../../contribute/code.rst:182
msgid "Elgg has automated tests for both PHP and JavaScript functionality. All new contributions are required to come with appropriate tests."
msgstr ""

#: ../../contribute/code.rst:186
msgid "PHPUnit Tests"
msgstr ""

#: ../../contribute/code.rst:188
msgid "TODO"
msgstr ""

#: ../../contribute/code.rst:191
msgid "Jasmine Tests"
msgstr ""

#: ../../contribute/code.rst:193
msgid "Test files must be named ``*Test.js`` and should go in either ``js/tests/`` or next to their source files in ``views/default/js``. Karma will automatically pick up on new ``*Test.js`` files and run those tests."
msgstr ""

#: ../../contribute/code.rst:198
msgid "Test boilerplate"
msgstr ""

#: ../../contribute/code.rst:213
msgid "Running the tests"
msgstr ""

#: ../../contribute/code.rst:214
msgid "Elgg uses `Karma`_ with `Jasmine`_ to run JS unit tests."
msgstr ""

#: ../../contribute/code.rst:219
msgid "You will need to have nodejs and npm installed."
msgstr ""

#: ../../contribute/code.rst:221
msgid "First install all the development dependencies:"
msgstr ""

#: ../../contribute/code.rst:227
msgid "Run through the tests just once and then quit:"
msgstr ""

#: ../../contribute/code.rst:233
msgid "You can also run tests continuously during development so they run on each save:"
msgstr ""

#: ../../contribute/code.rst:240
msgid "Debugging JS tests"
msgstr ""

#: ../../contribute/code.rst:242
msgid "You can run the test suite inside Chrome dev tools:"
msgstr ""

#: ../../contribute/code.rst:248
msgid "This will output a URL like ``http://localhost:9876/``."
msgstr ""

#: ../../contribute/code.rst:250
msgid "Open the URL in Chrome, and click \"Debug\"."
msgstr ""

#: ../../contribute/code.rst:251
msgid "Open Chrome dev tools and the Console tab."
msgstr ""

#: ../../contribute/code.rst:252
msgid "Reload the page."
msgstr ""

#: ../../contribute/code.rst:254
msgid "If you alter a test you'll have to quit Karma with ``Ctrl-c`` and restart it."
msgstr ""

#: ../../contribute/code.rst:257
msgid "Coding best practices"
msgstr ""

#: ../../contribute/code.rst:259
msgid "Make your code easier to read, easier to maintain, and easier to debug. Consistent use of these guidelines means less guess work for developers, which means happier, more productive developers."
msgstr ""

#: ../../contribute/code.rst:265
msgid "General coding"
msgstr ""

#: ../../contribute/code.rst:268
msgid "Don't Repeat Yourself"
msgstr ""

#: ../../contribute/code.rst:270
msgid "If you are copy-pasting code a significant amount of code, consider whether there's an opportunity to reduce duplication by introducing a function, an additional argument, a view, or a new component class."
msgstr ""

#: ../../contribute/code.rst:273
msgid "E.g. If you find views that are identical except for a single value, refactor into a single view that takes an option."
msgstr ""

#: ../../contribute/code.rst:276
msgid "**Note:** In a bugfix release, *some duplication is preferrable to refactoring*. Fix bugs in the simplest way possible and refactor to reduce duplication in the next minor release branch."
msgstr ""

#: ../../contribute/code.rst:280
msgid "Embrace SOLID and GRASP"
msgstr ""

#: ../../contribute/code.rst:282
msgid "Use these `principles for OO design`__ to solve problems using loosely coupled components, and try to make all components and integration code testable."
msgstr ""

#: ../../contribute/code.rst:288
msgid "Whitespace is free"
msgstr ""

#: ../../contribute/code.rst:290
msgid "Don't be afraid to use it to separate blocks of code. Use a single space to separate function params and string concatenation."
msgstr ""

#: ../../contribute/code.rst:294
msgid "Variable names"
msgstr ""

#: ../../contribute/code.rst:296
msgid "Use self-documenting variable names.  ``$group_guids`` is better than ``$array``."
msgstr ""

#: ../../contribute/code.rst:298
msgid "Avoid double-negatives. Prefer ``$enable = true`` to ``$disable = false``."
msgstr ""

#: ../../contribute/code.rst:301
msgid "Interface names"
msgstr ""

#: ../../contribute/code.rst:303
msgid "Use the pattern `Elgg\\{Namespace}\\{Name}`."
msgstr ""

#: ../../contribute/code.rst:305
msgid "Do not include an `I` prefix or an `Interface` suffix."
msgstr ""

#: ../../contribute/code.rst:307
msgid "We do not include any prefix or suffix so that we're encouraged to:"
msgstr ""

#: ../../contribute/code.rst:309
msgid "name implementation classes more descriptively (the \"default\" name is taken)."
msgstr ""

#: ../../contribute/code.rst:310
msgid "type-hint on interfaces, because that is the shortest, easiest thing to do."
msgstr ""

#: ../../contribute/code.rst:313
msgid "Functions"
msgstr ""

#: ../../contribute/code.rst:315
msgid "Where possible, have functions/methods return a single type. Use empty values such as array(), \"\", or 0 to indicate no results."
msgstr ""

#: ../../contribute/code.rst:318
msgid "Be careful where valid return values (like ``\"0\"``) could be interpreted as empty."
msgstr ""

#: ../../contribute/code.rst:320
msgid "Functions not throwing an exception on error should return ``false`` upon failure."
msgstr ""

#: ../../contribute/code.rst:322
msgid "Functions returning only boolean should be prefaced with ``is_`` or ``has_`` (eg, ``elgg_is_logged_in()``, ``elgg_has_access_to_entity()``)."
msgstr ""

#: ../../contribute/code.rst:326
msgid "Ternary syntax"
msgstr ""

#: ../../contribute/code.rst:328
msgid "Acceptable only for single-line, non-embedded statements."
msgstr ""

#: ../../contribute/code.rst:331
msgid "Minimize complexity"
msgstr ""

#: ../../contribute/code.rst:333
msgid "Minimize nested blocks and distinct execution paths through code. Use `Return Early`__ to reduce nesting levels and cognitive load when reading code."
msgstr ""

#: ../../contribute/code.rst:339
msgid "Use comments effectively"
msgstr ""

#: ../../contribute/code.rst:341
msgid "Good comments describe the \"why.\"  Good code describes the \"how.\" E.g.:"
msgstr ""

#: ../../contribute/code.rst:343
#: ../../contribute/code.rst:498
#: ../../contribute/code.rst:518
#: ../../contribute/code.rst:533
#: ../../contribute/code.rst:551
#: ../../contribute/code.rst:573
#: ../../contribute/code.rst:597
msgid "Bad:"
msgstr ""

#: ../../contribute/code.rst:354
#: ../../contribute/code.rst:483
#: ../../contribute/code.rst:508
#: ../../contribute/code.rst:524
#: ../../contribute/code.rst:539
#: ../../contribute/code.rst:559
#: ../../contribute/code.rst:582
#: ../../contribute/code.rst:605
msgid "Good:"
msgstr ""

#: ../../contribute/code.rst:365
msgid "Always include a comment if it's not obvious that something must be done in a certain way. Other developers looking at the code should be discouraged from refactoring in a way that would break the code."
msgstr ""

#: ../../contribute/code.rst:377
msgid "Commit effectively"
msgstr ""

#: ../../contribute/code.rst:379
msgid "Err on the side of `atomic commits`__ which are highly focused on changing one aspect of the system."
msgstr ""

#: ../../contribute/code.rst:380
msgid "Avoid mixing in unrelated changes or extensive whitespace changes. Commits with many changes are scary and make pull requests difficult to review."
msgstr ""

#: ../../contribute/code.rst:382
msgid "Use visual git tools to craft `highly precise and readable diffs`__."
msgstr ""

#: ../../contribute/code.rst:388
msgid "Include tests"
msgstr ""

#: ../../contribute/code.rst:390
msgid "When at all possible include unit tests for code you add or alter. We use:"
msgstr ""

#: ../../contribute/code.rst:392
msgid "PHPUnit for PHP unit tests."
msgstr ""

#: ../../contribute/code.rst:394
msgid "SimpleTest for legacy PHP tests that require use of the database. Our long-term goal is to move all tests to PHPUnit."
msgstr ""

#: ../../contribute/code.rst:397
msgid "Karma for JavaScript unit tests"
msgstr ""

#: ../../contribute/code.rst:400
msgid "Naming tests"
msgstr ""

#: ../../contribute/code.rst:402
msgid "Break tests up by the behaviors you want to test and use names that describe the behavior. E.g.:"
msgstr ""

#: ../../contribute/code.rst:405
msgid "Not so good: One big method `testAdd()`."
msgstr ""

#: ../../contribute/code.rst:407
msgid "Better: Methods `testAddingZeroChangesNothing` and `testAddingNegativeNumberSubtracts`"
msgstr ""

#: ../../contribute/code.rst:410
msgid "Keep bugfixes simple"
msgstr ""

#: ../../contribute/code.rst:412
msgid "Avoid the temptation to refactor code for a bugfix release. Doing so tends to introduce regressions, breaking functionality in what should be a stable release."
msgstr ""

#: ../../contribute/code.rst:416
msgid "PHP guidelines"
msgstr ""

#: ../../contribute/code.rst:418
msgid "These are the required coding standards for Elgg core and all bundled plugins. Plugin developers are strongly encouraged to adopt these standards."
msgstr ""

#: ../../contribute/code.rst:421
msgid "Developers should first read the `PSR-2 Coding Standard Guide`__."
msgstr ""

#: ../../contribute/code.rst:425
msgid "Elgg's standards extend PSR-2, but differ in the following ways:"
msgstr ""

#: ../../contribute/code.rst:427
msgid "Indent using one tab character, not spaces."
msgstr ""

#: ../../contribute/code.rst:428
msgid "Opening braces for classes, methods, and functions must go on the same line."
msgstr ""

#: ../../contribute/code.rst:429
msgid "If a line reaches over 100 characters, consider refactoring (e.g. introduce variables)."
msgstr ""

#: ../../contribute/code.rst:430
msgid "Compliance with `PSR-1`__ is encouraged, but not strictly required."
msgstr ""

#: ../../contribute/code.rst:435
msgid "Documentation"
msgstr ""

#: ../../contribute/code.rst:437
msgid "Include PHPDoc comments on functions and classes (all methods; declared properties when appropriate), including types and descriptions of all parameters."
msgstr ""

#: ../../contribute/code.rst:441
msgid "In lists of ``@param`` declarations, the beginnings of variable names and descriptions must line up."
msgstr ""

#: ../../contribute/code.rst:444
msgid "Annotate classes, methods, properties, and functions with ``@access private`` unless they are intended for public use, are already of limited visibility, or are within a class already marked as private."
msgstr ""

#: ../../contribute/code.rst:448
msgid "Use ``//`` or ``/* */`` when commenting."
msgstr ""

#: ../../contribute/code.rst:450
msgid "Use only ``//`` comments inside function/method bodies."
msgstr ""

#: ../../contribute/code.rst:453
msgid "Naming"
msgstr ""

#: ../../contribute/code.rst:455
msgid "Use underscores to separate words in the names of functions, variables, and properties. Method names are camelCase."
msgstr ""

#: ../../contribute/code.rst:458
msgid "Names of functions for public use must begin with ``elgg_``."
msgstr ""

#: ../../contribute/code.rst:460
msgid "All other function names must begin with ``_elgg_``."
msgstr ""

#: ../../contribute/code.rst:462
msgid "Name globals and constants in ``ALL_CAPS`` (``ACCESS_FRIENDS``, ``$CONFIG``)."
msgstr ""

#: ../../contribute/code.rst:465
msgid "Miscellaneous"
msgstr ""

#: ../../contribute/code.rst:467
msgid "For PHP requirements, see ``composer.json``."
msgstr ""

#: ../../contribute/code.rst:469
msgid "Do not use PHP shortcut tags ``<?`` or ``<%``. It is OK to use ``<?=`` since it is always enabled as of PHP 5.4."
msgstr ""

#: ../../contribute/code.rst:472
msgid "When creating strings with variables:"
msgstr ""

#: ../../contribute/code.rst:474
msgid "use double-quoted strings"
msgstr ""

#: ../../contribute/code.rst:475
msgid "wrap variables with braces only when necessary."
msgstr ""

#: ../../contribute/code.rst:477
msgid "Bad (hard to read, misuse of quotes and {}s):"
msgstr ""

#: ../../contribute/code.rst:489
msgid "Remove trailing whitespace at the end of lines. An easy way to do this before you commit is to run ``php .scripts/fix_style.php`` from the installation root."
msgstr ""

#: ../../contribute/code.rst:493
msgid "CSS guidelines"
msgstr ""

#: ../../contribute/code.rst:496
msgid "Use shorthand where possible"
msgstr ""

#: ../../contribute/code.rst:516
msgid "Use hyphens, not underscores"
msgstr ""

#: ../../contribute/code.rst:531
msgid "One property per line"
msgstr ""

#: ../../contribute/code.rst:547
msgid "Property declarations"
msgstr ""

#: ../../contribute/code.rst:549
msgid "These should be spaced like so: `property: value;`"
msgstr ""

#: ../../contribute/code.rst:566
msgid "Vendor prefixes"
msgstr ""

#: ../../contribute/code.rst:568
msgid "Group vendor-prefixes for the same property together"
msgstr ""

#: ../../contribute/code.rst:569
msgid "Longest vendor-prefixed version first"
msgstr ""

#: ../../contribute/code.rst:570
msgid "Always include non-vendor-prefixed version"
msgstr ""

#: ../../contribute/code.rst:571
msgid "Put an extra newline between vendor-prefixed groups and other properties"
msgstr ""

#: ../../contribute/code.rst:595
msgid "Group subproperties"
msgstr ""

#: ../../contribute/code.rst:614
msgid "Javascript guidelines"
msgstr ""

#: ../../contribute/code.rst:616
msgid "Same formatting standards as PHP apply."
msgstr ""

#: ../../contribute/code.rst:618
msgid "All functions should be in the ``elgg`` namespace."
msgstr ""

#: ../../contribute/code.rst:620
msgid "Function expressions should end with a semi-colon."
msgstr ""

#: ../../contribute/code.rst:631
msgid "Deprecating APIs"
msgstr ""

#: ../../contribute/code.rst:633
msgid "Occasionally functions and classes must be deprecated in favor of newer replacements. Since 3rd party plugin authors rely on a consistent API, backward compatibility must be maintained, but will not be maintained indefinitely as plugin authors are expected to properly update their plugins. In order to maintain backward compatibility, deprecated APIs will follow these guidelines:"
msgstr ""

#: ../../contribute/code.rst:640
msgid "Minor version (1.x) that deprecates an API must include a wrapper function/class (or otherwise appropriate means) to maintain backward compatibility, including any bugs in the original function/class. This compatibility layer uses ``elgg_deprecated_notice('...', '1.11')`` to log that the function is deprecated."
msgstr ""

#: ../../contribute/code.rst:646
msgid "The next major revision (2.0) removes the compatibility layer. Any use of the deprecated API should be corrected before this."
msgstr ""

#: ../../contribute/docs.rst:2
msgid "Writing Documentation"
msgstr ""

#: ../../contribute/docs.rst:4
msgid "New documentation should fit well with the rest of Elgg's docs."
msgstr ""

#: ../../contribute/docs.rst:11
msgid "Testing docs locally"
msgstr ""

#: ../../contribute/docs.rst:12
msgid "Elgg has a `grunt`_ script that automatically builds the docs, opens them in a browser window, and automatically reloads as you make changes (the reload takes just a few seconds)."
msgstr ""

#: ../../contribute/docs.rst:22
msgid "It's that easy! Grunt will continue running, watching the docs for changes and automatically rebuilding."
msgstr ""

#: ../../contribute/docs.rst:28
msgid "Follow the existing document organization"
msgstr ""

#: ../../contribute/docs.rst:29
msgid "The current breakdown is not necessarily the One True Way to organize docs, but consistency is better than randomness."
msgstr ""

#: ../../contribute/docs.rst:34
msgid "intro/*"
msgstr ""

#: ../../contribute/docs.rst:35
msgid "This is everything that brand new users need to know (installation, features, license, etc.)"
msgstr ""

#: ../../contribute/docs.rst:38
msgid "admin/*"
msgstr ""

#: ../../contribute/docs.rst:39
msgid "Guides for administrators. Task-oriented."
msgstr ""

#: ../../contribute/docs.rst:42
msgid "guides/*"
msgstr ""

#: ../../contribute/docs.rst:43
msgid "API guides for plugin developers. Cookbook-style. Example heavy. Code snippet heavy. Broken down by services (actions, i18n, routing, db, etc.). This should only discuss the public API and its behavior, not implementation details or reasoning."
msgstr ""

#: ../../contribute/docs.rst:48
msgid "design/*"
msgstr ""

#: ../../contribute/docs.rst:49
msgid "Design docs for people who want to get a better understanding of how/why core is built the way it is. This should discuss internal implementation details of the various services, what tradeoffs were made, and the reasoning behind the final decision. Should be useful for people who want to contribute and for communication b/w core devs."
msgstr ""

#: ../../contribute/docs.rst:55
msgid "contribute/*"
msgstr ""

#: ../../contribute/docs.rst:56
msgid "Contributors guides for the various ways people can participate in the project."
msgstr ""

#: ../../contribute/docs.rst:59
msgid "appendix/*"
msgstr ""

#: ../../contribute/docs.rst:60
msgid "More detailed/meta/background information about the project (history, roadmap, etc.)"
msgstr ""

#: ../../contribute/docs.rst:64
msgid "Use \"Elgg\" in a grammatically correct way"
msgstr ""

#: ../../contribute/docs.rst:65
msgid "Elgg is not an acronym, so writing it in all caps (ELGG or E-LGG) is incorrect. Please don’t do this."
msgstr ""

#: ../../contribute/docs.rst:69
msgid "In English, Elgg does not take an article when used as a noun. Here are some examples to emulate:"
msgstr ""

#: ../../contribute/docs.rst:68
msgid "“I’m using Elgg to run my website”"
msgstr ""

#: ../../contribute/docs.rst:69
msgid "“Install Elgg to get your community online”"
msgstr ""

#: ../../contribute/docs.rst:73
msgid "When used as an adjective, the article applies to the main noun, so you should use one. For example:"
msgstr ""

#: ../../contribute/docs.rst:72
msgid "\"Go to the Elgg community website to get help.\""
msgstr ""

#: ../../contribute/docs.rst:73
msgid "\"I built an Elgg-based network yesterday\""
msgstr ""

#: ../../contribute/docs.rst:75
msgid "This advice may not apply in languages other than English."
msgstr ""

#: ../../contribute/docs.rst:79
msgid "Avoid first person pronouns"
msgstr ""

#: ../../contribute/docs.rst:80
msgid "Refer to the reader as “you.” Do not include yourself in the normal narrative."
msgstr ""

#: ../../contribute/docs.rst:82
#: ../../contribute/docs.rst:93
#: ../../contribute/docs.rst:105
#: ../../contribute/docs.rst:119
msgid "Before:"
msgstr ""

#: ../../contribute/docs.rst:84
msgid "When we’re done installing Elgg, we’ll look for some plugins!"
msgstr ""

#: ../../contribute/docs.rst:86
#: ../../contribute/docs.rst:97
#: ../../contribute/docs.rst:109
#: ../../contribute/docs.rst:123
msgid "After:"
msgstr ""

#: ../../contribute/docs.rst:88
msgid "When you’re done installing Elgg, look for some plugins!"
msgstr ""

#: ../../contribute/docs.rst:90
msgid "To refer to yourself (avoid this if possible), use your name and write in the third person. This clarifies to future readers/editors whose opinions are being expressed."
msgstr ""

#: ../../contribute/docs.rst:95
msgid "I think the best way to do X is to use Y."
msgstr ""

#: ../../contribute/docs.rst:99
msgid "Evan thinks the best way to do X is to use Y."
msgstr ""

#: ../../contribute/docs.rst:103
msgid "Eliminate fluff"
msgstr ""

#: ../../contribute/docs.rst:107
msgid "If you want to use a third-party javascript library within the Elgg framework, you should take care to call the ``elgg_register_js`` function to register it."
msgstr ""

#: ../../contribute/docs.rst:111
msgid "To use a third-party javascript library, call ``elgg_register_js`` to register it."
msgstr ""

#: ../../contribute/docs.rst:115
msgid "Prefer absolute dates over relative ones"
msgstr ""

#: ../../contribute/docs.rst:116
msgid "It is not easy to tell when a particular sentence or paragraph was written, so relative dates quickly become meaningless. Absolute dates also give the reader a good indication of whether a project has been abandoned, or whether some advice might be out of date."
msgstr ""

#: ../../contribute/docs.rst:121
msgid "Recently the foo was barred. Soon, the baz will be barred too."
msgstr ""

#: ../../contribute/docs.rst:125
msgid "Recently (as of September 2013), the foo was barred. The baz is expected to be barred by October 2013."
msgstr ""

#: ../../contribute/docs.rst:129
msgid "Do not remind the reader to contribute"
msgstr ""

#: ../../contribute/docs.rst:130
msgid "Focus on addressing only the topic at hand. Constant solicitation for free work is annoying and makes the project look needy. If people want to contribute to the project, they can visit the contributor guide."
msgstr ""

#: ../../contribute/docs.rst:136
msgid "Internationalizing documentation"
msgstr ""

#: ../../contribute/docs.rst:138
msgid "When you change documentation, remember to update the documentation translation templates before you commit:"
msgstr ""

#: ../../contribute/docs.rst:146
msgid "For more information, see http://sphinx-doc.org/latest/intl.html#translating-with-sphinx-intl"
msgstr ""

#: ../../contribute/i18n.rst:2
msgid "Translations"
msgstr ""

#: ../../contribute/i18n.rst:4
msgid "Translations multiply the impact that Elgg can have by making it accessible to a larger percentage of the world."
msgstr ""

#: ../../contribute/i18n.rst:7
msgid "The community will always be indebted to those of you who work hard to provide high quality translations for Elgg's UI and docs."
msgstr ""

#: ../../contribute/i18n.rst:11
msgid "Transifex"
msgstr ""

#: ../../contribute/i18n.rst:13
msgid "All translation for the Elgg project is organized through Transifex."
msgstr ""

#: ../../contribute/i18n.rst:15
msgid "https://www.transifex.com/organization/elgg"
msgstr ""

#: ../../contribute/i18n.rst:17
msgid "Plugin authors are encouraged to coordinate translations via Transifex as well so the whole community can be unified and make it really easy for translators to contribute to any plugin in the Elgg ecosystem."
msgstr ""

#: ../../contribute/index.rst:2
msgid "Contributor Guides"
msgstr ""

#: ../../contribute/index.rst:4
msgid "Participate in making Elgg even better."
msgstr ""

#: ../../contribute/index.rst:6
msgid "Elgg is a community-driven project. It relies on the support of volunteers to succeed. Here are some ways you can help:"
msgstr ""

#: ../../contribute/issues.rst:2
msgid "Reporting Issues"
msgstr ""

#: ../../contribute/issues.rst:4
msgid "Report bugs and features requests to https://github.com/Elgg/Elgg/issues. See below for guidelines."
msgstr ""

#: ../../contribute/issues.rst:8
msgid "DISCLAIMERS"
msgstr ""

#: ../../contribute/issues.rst:10
msgid "**SECURITY ISSUES SHOULD BE REPORTED TO security @ elgg . org!** Please do not post any security issues on github!!"
msgstr ""

#: ../../contribute/issues.rst:12
msgid "Support requests belong on the `community site`_. Tickets with support requests will be closed."
msgstr ""

#: ../../contribute/issues.rst:14
msgid "We cannot make any guarantees as to when your ticket will be resolved."
msgstr ""

#: ../../contribute/issues.rst:17
msgid "Bug reports"
msgstr ""

#: ../../contribute/issues.rst:19
msgid "Before submitting a bug report:"
msgstr ""

#: ../../contribute/issues.rst:21
msgid "Search for an existing ticket on the issue you’re having. Add any extra info there."
msgstr ""

#: ../../contribute/issues.rst:23
msgid "Verify the problem is reproducible"
msgstr ""

#: ../../contribute/issues.rst:25
msgid "On the latest version of Elgg"
msgstr ""

#: ../../contribute/issues.rst:26
msgid "With all third-party plugins disabled"
msgstr ""

#: ../../contribute/issues.rst:28
msgid "Good bug report checklist:"
msgstr ""

#: ../../contribute/issues.rst:30
msgid "Expected behavior and actual behavior"
msgstr ""

#: ../../contribute/issues.rst:31
msgid "Clear steps to reproduce the problem"
msgstr ""

#: ../../contribute/issues.rst:32
msgid "The version of Elgg you’re running"
msgstr ""

#: ../../contribute/issues.rst:33
msgid "Browsers affected by this problem"
msgstr ""

#: ../../contribute/issues.rst:36
msgid "Feature requests"
msgstr ""

#: ../../contribute/issues.rst:38
msgid "Before submitting a feature request:"
msgstr ""

#: ../../contribute/issues.rst:40
msgid "Check the `community site`_ for a plugin that has the features you need."
msgstr ""

#: ../../contribute/issues.rst:42
msgid "Consider if you can :doc:`develop a plugin </tutorials/index>` that does what you need."
msgstr ""

#: ../../contribute/issues.rst:43
msgid "Search through the closed tickets to see if someone else suggested the same feature, but got turned down. You’ll need to be able to explain why your suggestion should be considered this time."
msgstr ""

#: ../../contribute/issues.rst:47
msgid "Good feature request checklist:"
msgstr ""

#: ../../contribute/issues.rst:49
msgid "Detailed explanation of the feature"
msgstr ""

#: ../../contribute/issues.rst:50
msgid "Real-life use-cases"
msgstr ""

#: ../../contribute/issues.rst:51
msgid "Proposed API"
msgstr ""

#: ../../contribute/money.rst:2
msgid "Becoming a Financial Supporter"
msgstr ""

#: ../../contribute/money.rst:6
msgid "All funds raised via the Elgg supporters network go directly into:"
msgstr ""

#: ../../contribute/money.rst:5
msgid "Elgg core development"
msgstr ""

#: ../../contribute/money.rst:6
msgid "Infrastructure provision (elgg.org, github, etc.)"
msgstr ""

#: ../../contribute/money.rst:8
msgid "It is a great way to help with Elgg development!"
msgstr ""

#: ../../contribute/money.rst:11
msgid "Benefits"
msgstr ""

#: ../../contribute/money.rst:12
msgid "For only $50 per year for individuals or $150 per year for organizations, you can get listed as a supporter on `our supporters page`_. Elgg supporters are listed there unless they request not to be."
msgstr ""

#: ../../contribute/money.rst:18
msgid "Supporters are able to put this official logo on their site if they wish:"
msgstr ""

#: ../../contribute/money.rst:25
msgid "Disclaimer"
msgstr ""

#: ../../contribute/money.rst:26
msgid "We operate a no refund policy on supporter subscriptions. If you would like to withdraw your support, go to PayPal and cancel your subscription. You will not be billed the following year."
msgstr ""

#: ../../contribute/money.rst:30
msgid "Being an Elgg Supporter does not give an individual or organization the right to impersonate, trade as or imply they are connected to the Elgg project. They can, however, mention that they support the Elgg project."
msgstr ""

#: ../../contribute/money.rst:34
msgid "If you have any questions about this disclaimer, email info@elgg.org."
msgstr ""

#: ../../contribute/money.rst:36
msgid "We reserve the right to remove or refuse a listing without any prior warning at our complete discretion. There is no refund policy."
msgstr ""

#: ../../contribute/money.rst:39
msgid "If there is no obvious use of Elgg, your site will be linked to with \"nofollow\" set."
msgstr ""

#: ../../contribute/money.rst:42
msgid "Sign up"
msgstr ""

#: ../../contribute/money.rst:43
msgid "If you would like to become an Elgg supporter:"
msgstr ""

#: ../../contribute/money.rst:45
msgid "read the disclaimer_ above"
msgstr ""

#: ../../contribute/money.rst:46
msgid "on the supporters page, `subscribe via PayPal`__"
msgstr ""

#: ../../contribute/money.rst:47
msgid "send an email to info@elgg.org with:"
msgstr ""

#: ../../contribute/money.rst:49
msgid "the date you subscribed"
msgstr ""

#: ../../contribute/money.rst:50
msgid "your name (and organization name, if applicable)"
msgstr ""

#: ../../contribute/money.rst:51
msgid "your website"
msgstr ""

#: ../../contribute/money.rst:52
msgid "your Elgg community profile"
msgstr ""

#: ../../contribute/money.rst:57
msgid "Once all the details have been received, we will add you to the appropriate list. Thanks for your support!"
msgstr ""

#: ../../contribute/releases.rst:2
msgid "Release Process Workflow"
msgstr ""

#: ../../contribute/releases.rst:4
msgid "Release a new version of Elgg."
msgstr ""

#: ../../contribute/releases.rst:6
msgid "This is the process the core team follows for making a new Elgg release. We have published this information in the spirit of openness, and to streamline onboarding of new team members."
msgstr ""

#: ../../contribute/releases.rst:15
msgid "Requirements"
msgstr ""

#: ../../contribute/releases.rst:17
msgid "SSH access to elgg.org"
msgstr ""

#: ../../contribute/releases.rst:18
msgid "Commit access to http://github.com/Elgg/Elgg"
msgstr ""

#: ../../contribute/releases.rst:19
msgid "Admin access to https://community.elgg.org/"
msgstr ""

#: ../../contribute/releases.rst:20
msgid "Access to `Twitter account`_"
msgstr ""

#: ../../contribute/releases.rst:21
msgid "Access to `G+ page`_"
msgstr ""

#: ../../contribute/releases.rst:22
msgid "Node.js and NPM installed"
msgstr ""

#: ../../contribute/releases.rst:23
msgid "Sphinx installed (``easy_install sphinx && easy_install sphinx-intl``)"
msgstr ""

#: ../../contribute/releases.rst:24
msgid "Transifex client installed (``easy_install transifex-client``)"
msgstr ""

#: ../../contribute/releases.rst:25
msgid "Transifex account with access to Elgg project"
msgstr ""

#: ../../contribute/releases.rst:28
msgid "1. First new stable minor/major release"
msgstr ""

#: ../../contribute/releases.rst:30
msgid "Make sure to update the :doc:`/appendix/support` document to include the new minor/major release date and fill in the blanks for the previous release."
msgstr ""

#: ../../contribute/releases.rst:33
msgid "2. Prepare and tag the release"
msgstr ""

#: ../../contribute/releases.rst:35
msgid "Make sure your local git clone is up to date!"
msgstr ""

#: ../../contribute/releases.rst:37
msgid "Merge latest commits up from lowest supported branch. Visit https://github.com/Elgg/Elgg/compare/new...old and submit the PR if there is anything that needs to be merged up."
msgstr ""

#: ../../contribute/releases.rst:41
msgid "Install the prerequisites:"
msgstr ""

#: ../../contribute/releases.rst:50
msgid "Run the ``release.php`` script. For example, to release 1.9.1:"
msgstr ""

#: ../../contribute/releases.rst:57
msgid "This creates a ``release-1.9.1`` branch in your local repo."
msgstr ""

#: ../../contribute/releases.rst:59
msgid "Next, manually browse to the ``/admin/settings/basic`` page and verify it loads. If it does not, a language file from Transifex may have a PHP syntax error. Fix the error and amend your commit with the new file:"
msgstr ""

#: ../../contribute/releases.rst:67
msgid "Next, submit a PR via Github:"
msgstr ""

#: ../../contribute/releases.rst:73
msgid "Once approved and merged, tag the release:"
msgstr ""

#: ../../contribute/releases.rst:83
msgid "Update Milestones on Github"
msgstr ""

#: ../../contribute/releases.rst:82
msgid "Mark release milestones as completed"
msgstr ""

#: ../../contribute/releases.rst:83
msgid "Move unresolved tickets in released milestones to later milestones"
msgstr ""

#: ../../contribute/releases.rst:86
msgid "3. Update the website"
msgstr ""

#: ../../contribute/releases.rst:88
msgid "The downloads need to point to the new releases."
msgstr ""

#: ../../contribute/releases.rst:91
msgid "Build Package"
msgstr ""

#: ../../contribute/releases.rst:93
msgid "ssh to elgg.org"
msgstr ""

#: ../../contribute/releases.rst:94
msgid "Clone https://github.com/Elgg/elgg-scripts"
msgstr ""

#: ../../contribute/releases.rst:95
msgid "Use elgg-scripts/build/build.sh to generate the .zip file."
msgstr ""

#: ../../contribute/releases.rst:97
msgid "Run without arguments to see usage. This also generates the ChangeLog.txt file."
msgstr ""

#: ../../contribute/releases.rst:99
msgid "Example::"
msgstr ""

#: ../../contribute/releases.rst:103
msgid "MIT::"
msgstr ""

#: ../../contribute/releases.rst:108
msgid "Update homepage, download, and previous download pages"
msgstr ""

#: ../../contribute/releases.rst:110
msgid "Clone https://github.com/Elgg/old-elgg-website"
msgstr ""

#: ../../contribute/releases.rst:111
msgid "Make changes, commit, push."
msgstr ""

#: ../../contribute/releases.rst:113
msgid "index.php"
msgstr ""

#: ../../contribute/releases.rst:114
msgid "download.php"
msgstr ""

#: ../../contribute/releases.rst:115
msgid "previous.php"
msgstr ""

#: ../../contribute/releases.rst:117
msgid "Pull to live site"
msgstr ""

#: ../../contribute/releases.rst:123
msgid "flush apc cache (via community admin panel)"
msgstr ""

#: ../../contribute/releases.rst:126
msgid "4. Make the announcement"
msgstr ""

#: ../../contribute/releases.rst:128
msgid "This should be the very last thing you do."
msgstr ""

#: ../../contribute/releases.rst:130
msgid "Sign in at https://community.elgg.org/ and compose a blog on with HTML version of CHANGELOG.md."
msgstr ""

#: ../../contribute/releases.rst:131
msgid "Add tags “release” and “elgg1.x” where x is whatever branch is being released."
msgstr ""

#: ../../contribute/releases.rst:132
msgid "Tweet from the elgg `Twitter account`_"
msgstr ""

#: ../../contribute/releases.rst:133
msgid "Post from the `G+ page`_"
msgstr ""

