Merge "Detect user rights conflicts"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Wed, 1 May 2013 22:01:40 +0000 (22:01 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Wed, 1 May 2013 22:01:40 +0000 (22:01 +0000)
1  2 
languages/messages/MessagesEn.php
languages/messages/MessagesQqq.php
maintenance/language/messages.inc

@@@ -162,22 -162,18 +162,22 @@@ $dateFormats = array
        'mdy time' => 'H:i',
        'mdy date' => 'F j, Y',
        'mdy both' => 'H:i, F j, Y',
 +      'mdy pretty' => 'F j',
  
        'dmy time' => 'H:i',
        'dmy date' => 'j F Y',
        'dmy both' => 'H:i, j F Y',
 +      'dmy pretty' => 'j F',
  
        'ymd time' => 'H:i',
        'ymd date' => 'Y F j',
        'ymd both' => 'H:i, Y F j',
 +      'ymd pretty' => 'F j',
  
        'ISO 8601 time' => 'xnH:xni:xns',
        'ISO 8601 date' => 'xnY-xnm-xnd',
        'ISO 8601 both' => 'xnY-xnm-xnd"T"xnH:xni:xns',
 +      'ISO 8601 pretty' => 'xnm-xnd'
  );
  
  /**
@@@ -253,8 -249,6 +253,8 @@@ $magicWords = array
        'fullpagenamee'           => array( 1,    'FULLPAGENAMEE' ),
        'subpagename'             => array( 1,    'SUBPAGENAME' ),
        'subpagenamee'            => array( 1,    'SUBPAGENAMEE' ),
 +      'rootpagename'            => array( 1,    'ROOTPAGENAME' ),
 +      'rootpagenamee'           => array( 1,    'ROOTPAGENAMEE' ),
        'basepagename'            => array( 1,    'BASEPAGENAME' ),
        'basepagenamee'           => array( 1,    'BASEPAGENAMEE' ),
        'talkpagename'            => array( 1,    'TALKPAGENAME' ),
@@@ -447,7 -441,6 +447,7 @@@ $specialPageAliases = array
        'Randomredirect'            => array( 'RandomRedirect' ),
        'Recentchanges'             => array( 'RecentChanges' ),
        'Recentchangeslinked'       => array( 'RecentChangesLinked', 'RelatedChanges' ),
 +      'Redirect'                  => array( 'Redirect' ),
        'Revisiondelete'            => array( 'RevisionDelete' ),
        'Search'                    => array( 'Search' ),
        'Shortpages'                => array( 'ShortPages' ),
@@@ -1082,15 -1075,10 +1082,15 @@@ Do not forget to change your [[Special:
  'yourname'                     => 'Username:',
  'userlogin-yourname'           => 'Username',
  'userlogin-yourname-ph'        => 'Enter your username',
 +'createacct-helpusername-url'     => '{{ns:Project}}:Username_policy',
 +'createacct-helpusername-link'    => '[[{{MediaWiki:createacct-helpusername-url}}|(help me choose)]]',
  'yourpassword'                 => 'Password:',
  'userlogin-yourpassword'       => 'Password',
  'userlogin-yourpassword-ph'    => 'Enter your password',
 +'createacct-yourpassword-ph'      => 'Enter a password',
  'yourpasswordagain'            => 'Retype password:',
 +'createacct-yourpasswordagain'    => 'Confirm password',
 +'createacct-yourpasswordagain-ph' => 'Enter password again',
  'remembermypassword'           => 'Remember my login on this browser (for a maximum of $1 {{PLURAL:$1|day|days}})',
  'userlogin-remembermypassword' => 'Remember me',
  'userlogin-signwithsecure'     => 'Sign in with secure server',
  'userlogin-resetlink'          => 'Forgotten your login details?',
  'helplogin-url'                => 'Help:Logging in',
  'userlogin-helplink'           => '[[{{MediaWiki:helplogin-url}}|Help with logging in]]',
 +'createacct-join'                 => 'Enter your information below.',
 +'createacct-emailrequired'        => 'Email address',
 +'createacct-emailoptional'        => 'Email address (optional)',
 +'createacct-email-ph'             => 'Enter your email address',
  'createaccountmail'            => 'Use a temporary random password and send it to the email address specified below',
 +'createacct-realname'             => 'Real name (optional)',
  'createaccountreason'          => 'Reason:',
 +'createacct-reason'               => 'Reason',
 +'createacct-captcha'              => 'Security check',
 +'createacct-captcha-help-url'     => '{{ns:Project}}:Request an account',
 +'createacct-imgcaptcha-help'      => 'Can\'t see the image? [[{{MediaWiki:createacct-captcha-help-url}}|Request an account]]',
 +'createacct-imgcaptcha-ph'        => 'Enter the text you see above',
 +'createacct-benefit-heading'      => '{{SITENAME}} is made by people like you.',
 +'createacct-benefit-icon1'        => 'icon-edits',
 +'createacct-benefit-head1'        => '{{NUMBEROFEDITS}}',
 +'createacct-benefit-body1'        => 'edits',
 +'createacct-benefit-icon2'        => 'icon-pages',
 +'createacct-benefit-head2'        => '{{NUMBEROFARTICLES}}',
 +'createacct-benefit-body2'        => 'pages',
 +'createacct-benefit-icon3'        => 'icon-contributors',
 +'createacct-benefit-head3'        => '{{NUMBEROFACTIVEUSERS}}',
 +'createacct-benefit-body3'        => 'recent contributors',
  'badretype'                    => 'The passwords you entered do not match.',
  'userexists'                   => 'Username entered already in use.
  Please choose a different name.',
  'loginerror'                   => 'Login error',
 +'createacct-error'             => 'Account creation error',
  'createaccounterror'           => 'Could not create account: $1',
  'nocookiesnew'                 => 'The user account was created, but you are not logged in.
  {{SITENAME}} uses cookies to log in users.
@@@ -1247,7 -1214,6 +1247,7 @@@ To finish logging in, you must set a ne
  'oldpassword'               => 'Old password:',
  'newpassword'               => 'New password:',
  'retypenew'                 => 'Retype new password:',
 +'resetpass-abort-generic'   => 'Password change has been aborted by an extension.',
  'resetpass_submit'          => 'Set password and log in',
  'resetpass_success'         => 'Your password has been changed successfully!
  Now logging you in...',
@@@ -2004,6 -1970,7 +2004,7 @@@ Your email address is not revealed whe
  'userrights-changeable-col'      => 'Groups you can change',
  'userrights-unchangeable-col'    => 'Groups you cannot change',
  'userrights-irreversible-marker' => '$1*', # only translate this message to other languages if you have to change it
+ 'userrights-conflict'            => 'User rights conflict! Please apply your changes again.',
  
  # Groups
  'group'               => 'Group:',
@@@ -3914,26 -3881,11 +3915,26 @@@ By executing it, your system may be com
  'minutes'        => '{{PLURAL:$1|$1 minute|$1 minutes}}',
  'hours'          => '{{PLURAL:$1|$1 hour|$1 hours}}',
  'days'           => '{{PLURAL:$1|$1 day|$1 days}}',
 +'weeks'          => '{{PLURAL:$1|$1 week|$1 weeks}}',
  'months'         => '{{PLURAL:$1|$1 month|$1 months}}',
  'years'          => '{{PLURAL:$1|$1 year|$1 years}}',
  'ago'            => '$1 ago',
  'just-now'       => 'just now',
  
 +# Human-readable timestamps
 +'hours-ago'    => '$1 {{PLURAL:$1|hour|hours}} ago',
 +'minutes-ago'  => '$1 {{PLURAL:$1|minute|minutes}} ago',
 +'seconds-ago'  => '$1 {{PLURAL:$1|seconds|seconds}} ago',
 +'monday-at'    => 'Monday at $1',
 +'tuesday-at'   => 'Tuesday at $1',
 +'wednesday-at' => 'Wednesday at $1',
 +'thursday-at'  => 'Thursday at $1',
 +'friday-at'    => 'Friday at $1',
 +'saturday-at'  => 'Saturday at $1',
 +'sunday-at'    => 'Sunday at $1',
 +'today-at'     => '$1',
 +'yesterday-at' => 'Yesterday at $1',
 +
  # Bad image list
  'bad_image_list' => 'The format is as follows:
  
@@@ -4789,18 -4741,12 +4790,18 @@@ You should have received [{{SERVER}}{{S
  'version-entrypoints-api-php'           => '[https://www.mediawiki.org/wiki/Manual:api.php api.php]', # do not translate or duplicate this message to other languages
  'version-entrypoints-load-php'          => '[https://www.mediawiki.org/wiki/Manual:load.php load.php]', # do not translate or duplicate this message to other languages
  
 -# Special:FilePath
 -'filepath'         => 'File path',
 -'filepath-page'    => 'File:',
 -'filepath-submit'  => 'Go',
 -'filepath-summary' => 'This special page returns the complete path for a file.
 -Images are shown in full resolution, other file types are started with their associated program directly.',
 +# Special:Redirect
 +'redirect'         => 'Redirect by file, user, or revision ID',
 +'redirect-legend'  => 'Redirect to a file or page',
 +'redirect-text'    => '',
 +'redirect-summary' => 'This special page redirects to a file (given the file name), a page (given a revision ID), or a user page (given a numeric user ID).',
 +'redirect-submit'  => 'Go',
 +'redirect-lookup'  => 'Lookup:',
 +'redirect-value'   => 'Value:',
 +'redirect-user'     => 'User ID',
 +'redirect-revision' => 'Page revision',
 +'redirect-file'     => 'File name',
 +'redirect-not-exists' => 'Value not found',
  
  # Special:FileDuplicateSearch
  'fileduplicatesearch'           => 'Search for duplicate files',
@@@ -4896,7 -4842,6 +4897,7 @@@ This site is experiencing technical dif
  'htmlform-selectorother-other' => 'Other',
  'htmlform-no'                  => 'No',
  'htmlform-yes'                 => 'Yes',
 +'htmlform-chosen-placeholder'  => 'Select an option',
  
  # SQLite database support
  'sqlite-has-fts' => '$1 with full-text search support',
@@@ -509,8 -509,8 +509,8 @@@ See also
  'create' => 'The text on the tab of the edit form on unexisting pages starts editing them.
  
  {{Identical|Create}}',
 -'editthispage' => 'This is the "edit" link as used in the skins Classic/Standard, Cologne Blue and Nostalgia. See {{msg|create-this-page}} for when the page does not exist.',
 -'create-this-page' => 'In the skins Classic/Standard, Cologne Blue and Nostalgia this is the text for the link leading to the edit form on pages that have not yet been created. See {{msg-mw|editthispage}} for when the page already exists.
 +'editthispage' => 'This is the "edit" link as used in the Cologne Blue skin, at the bottom of the page. See {{msg|create-this-page}} for when the page does not exist.',
 +'create-this-page' => 'In the Cologne Blue skin this is the text for the link leading to the edit form on pages that have not yet been created, at the bottom of the page. See {{msg-mw|editthispage}} for when the page already exists.
  {{Identical|Createpage}}',
  'delete' => 'Name of the Delete tab shown for admins. Should be in the infinitive mood.
  
@@@ -519,7 -519,7 +519,7 @@@ See also
  * {{msg-mw|Accesskey-ca-delete}}
  * {{msg-mw|Tooltip-ca-delete}}
  {{Identical|Delete}}',
 -'deletethispage' => 'In the skins Classic/Standard, Cologne Blue and Nostalgia this is the text for link to delete the page in admin view.
 +'deletethispage' => 'In the Cologne Blue skin this is the text for link to delete the page in admin view, at the bottom of the page.
  {{Identical|Delete this page}}',
  'undelete_short' => "It is tab label. It's really can be named ''nstab-undelete''.",
  'viewdeleted_short' => 'Tab label for the undelete button when the user has permission to view the deleted history but not undelete.',
@@@ -532,7 -532,7 +532,7 @@@ See also
  {{Identical|Protect}}',
  'protect_change' => 'Text on links for each entry in [[Special:ProtectedPages]] to change the protection of pages (only displayed to admins).
  {{Identical|Change}}',
 -'protectthispage' => 'In the skins Classic/Standard, Cologne Blue and Nostalgia this is the text for link to protect the page in admin view.
 +'protectthispage' => 'In this Cologne Blue skin this is the text for link to protect the page in admin view, at the bottom of the page.
  {{Identical|Protect this page}}',
  'unprotect' => 'Name of unprotect tab displayed for admins
  
@@@ -541,10 -541,10 +541,10 @@@ See also
  * {{msg-mw|Accesskey-ca-unprotect}}
  * {{msg-mw|Tooltip-ca-unprotect}}
  {{Identical|Unprotect}}',
 -'unprotectthispage' => 'In the skins Classic/Standard, Cologne Blue and Nostalgia this is the anchor text for the link to unprotect the page in admin view.
 +'unprotectthispage' => 'In this Cologne Blue skin this is the anchor text for the link to unprotect the page in admin view, at the bottom of the page.
  {{Identical|Unprotect this page}}',
  'newpage' => '{{Identical|New page}}',
 -'talkpage' => 'In the skins Classic/Standard, Cologne Blue and Nostalgia this is the text for link to discuss the page.',
 +'talkpage' => 'In the Cologne Blue skin this is the text for link to discuss the page, at the bottom of the page.',
  'talkpagelinktext' => 'Used as name of links going to talk page in some places, like in [[Special:RecentChanges]], [[Special:Allmessages]], [[Special:Logs]], and [[Special:Watchlist/edit]].
  
  {{Identical|Talk}}',
  'postcomment' => 'Used as link text.
  
  The link points to the talk page and has the parameters "action=edit&section=new".',
 -'articlepage' => "'Content page' is used for NS_MAIN and any other non-standard namespace and this message is only used in skins Nostalgia, Cologneblue and Standard in the bottomLinks part.
 +'articlepage' => "'Content page' is used for NS_MAIN and any other non-standard namespaces. Only used in the Cologne Blue skin in the bottomLinks part.
  
  {{Identical|Content page}}",
  'talk' => 'Used as display name for the tab to all {{msg-mw|Talk}} pages. These pages accompany all content pages and can be used for discussing the content page. Example: [[Talk:Example]].
@@@ -1045,33 -1045,13 +1045,33 @@@ In user preferences
  'userlogin-yourname' => 'In new vertical user login & create account forms, label for username field.
  {{Identical|Username}}',
  'userlogin-yourname-ph' => 'Placeholder text in new userlogin/create account form field.',
 +'createacct-helpusername-url' => 'The URL of a page providing username guidance for the wiki.
 +
 +Used as a link in {{msg-mw|Createacct-helpusername-link}}.
 +
 +See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]',
 +'createacct-helpusername-link' => 'Message in new create account form providing guidance for username.
 +
 +See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]',
  'yourpassword' => 'In user preferences
  
  {{Identical|Password}}',
  'userlogin-yourpassword' => 'In new vertical user login & create account forms, label for password field.
  {{Identical|Password}}',
 -'userlogin-yourpassword-ph' => 'Placeholder text in new userlogin form for password field.',
 +'userlogin-yourpassword-ph' => 'Placeholder text in new userlogin form for password field.
 +{{Identical|Enter password}}',
 +'createacct-yourpassword-ph' => 'Placeholder text in new create account form for password field.
 +
 +See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]
 +{{Identical|Enter password}}',
  'yourpasswordagain' => 'In user preferences',
 +'createacct-yourpasswordagain' => 'In new create account form, label for field to re-enter password
 +
 +See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]
 +{{Identical|Confirm password}}',
 +'createacct-yourpasswordagain-ph' => 'Placeholder text in new create account form for re-enter password field.
 +
 +See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]',
  'remembermypassword' => 'A check box in [[Special:UserLogin]]
  
  {{Identical|Remember my login on this computer}}',
@@@ -1139,63 -1119,12 +1139,63 @@@ Wikitext linking to login help
  
  See also:
  * {{msg-mw|Helplogin-url}}',
 -'createaccountmail' => 'Button text for creating a new account and sending the new password to the specified e-mail address directly, as used on [[Special:UserLogin/signup]] if creating accounts by e-mail is allowed.',
 +'createacct-join' => 'Subheading of vertical-layout create account form encouraging user to join the wiki.
 +
 +See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]',
 +'createacct-emailrequired' => 'Label in vertical-layout create account form for email field when it is required.
 +
 +See also:
 +* {{msg-mw|Createacct-emailoptional}}
 +{{Identical|E-mail address}}',
 +'createacct-emailoptional' => 'Label in vertical-layout create account form for email field when it is optional.
 +
 +See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]
 +
 +See also:
 +* {{msg-mw|Createacct-emailrequired}}',
 +'createacct-email-ph' => 'Placeholder in vertical-layout create account form for email field.
 +
 +See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]',
 +'createaccountmail' => 'Used as label for the checkbox for creating a new account and sending the new password to the specified e-mail address directly, as used on [[Special:UserLogin/signup]] if creating accounts by e-mail is allowed.
 +
 +See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]',
 +'createacct-realname' => 'In vertical-layout create account form, label for field to enter optional real name.',
  'createaccountreason' => '{{Identical|Reason}}',
 +'createacct-reason' => 'In vertical-layout create account form, label for field to enter reason to create an account when already logged-in.
 +
 +See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]
 +{{Identical|Reason}}',
 +'createacct-captcha' => 'Label in vertical-layout create account form for CAPTCHA input field when repositioned by JavaScript.',
 +'createacct-captcha-help-url' => 'The URL of a page providing CAPTCHA assistance for the wiki.
 +
 +Used as a link in {{msg-mw|Createacct-imgcaptcha-help}}.',
 +'createacct-imgcaptcha-help' => 'Help text in vertical-layout create account form for image CAPTCHA input field when repositioned by JavaScript.',
 +'createacct-imgcaptcha-ph' => 'Placehodler text in vertical-layout create account form for image CAPTCHA input field when repositioned by JavaScript.',
 +'createacct-benefit-heading' => 'In vertical-layout create account form, the heading for the section describing the benefits of creating an account.
 +
 +See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]',
 +'createacct-benefit-body1' => 'In vertical-layout create account form, the text for the first benefit.
 +
 +Preceded by the message {{msg-mw|Createacct-benefit-head1}} (number of edits).
 +
 +See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]
 +{{Identical|Edit}}',
 +'createacct-benefit-body2' => 'In vertical-layout create account form, the text for the second benefit.
 +
 +Preceded by the message {{msg-mw|Createacct-benefit-head2}} (number of pages).
 +
 +See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]
 +{{Identical|Page}}',
 +'createacct-benefit-body3' => 'In vertical-layout create account form, the text for the third benefit.
 +
 +Preceded by the message {{msg-mw|Createacct-benefit-head3}} (number of contributors).
 +
 +See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]',
  'badretype' => 'Used as error message when the new password and its retype do not match.',
  'userexists' => 'Used as error message in creating a user account.',
  'loginerror' => 'Used as title of error message.
  {{Identical|Login error}}',
 +'createacct-error' => 'Used as heading for the error message.',
  'createaccounterror' => 'Parameters:
  * $1 is an error message',
  'nocookiesnew' => "This message is displayed when a new account was successfully created, but the browser doesn't accept cookies.",
@@@ -1241,7 -1170,7 +1241,7 @@@ $1 is the minimum number of characters 
  
  Parameters:
  * $1 is a user name. This parameter can be used with GENDER.',
 -'noemailcreate' => 'Used as error message in [[Special:UserLogin]].',
 +'noemailcreate' => 'Used as error message when one user creates an account for another and there is no email.',
  'passwordsent' => '* $1 - username',
  'blocked-mailpassword' => 'Used as error message in password recovery.',
  'eauthentsent' => "This message appears after entering an e-mail address in [[Special:Preferences]] > {{int:prefs-personal}} > {{int:email}}, then clicking on '{{int:saveprefs}}'.",
@@@ -1314,7 -1243,6 +1314,7 @@@ See also
  {{Identical|Cancel}}',
  'resetpass-wrong-oldpass' => 'Error message shown on [[Special:ChangePassword]] when the old password is not valid.',
  'resetpass-temp-password' => 'The label of the input box for the temporary password (received by e-mail) on the form displayed after logging in with a temporary password.',
 +'resetpass-abort-generic' => 'Generic error message shown on [[Special:ChangePassword]] when an extension aborts a password change from a hook.',
  
  # Special:PasswordReset
  'passwordreset' => 'Title of [[Special:PasswordReset]].
@@@ -2331,8 -2259,7 +2331,8 @@@ See also
  
  See also:
  * {{msg-mw|Searchprofile-images|message}}
 -* {{msg-mw|Searchprofile-images-tooltip|tooltip}}',
 +* {{msg-mw|Searchprofile-images-tooltip|tooltip}}
 +{{Identical|Muitimedia}}',
  'searchprofile-everything' => 'Used as an option in [[Special:Search]].
  
  See also:
@@@ -2499,8 -2426,7 +2499,8 @@@ See also
  'resetprefs' => 'Button for resetting changes in the preferences page.',
  'restoreprefs' => 'Used in [[Special:Preferences]]',
  'prefs-editing' => 'Title of a tab in [[Special:Preferences]].
 -When changing this message, please also update {{msg-mw|vector-editwarning-warning}} which references to this message.',
 +When changing this message, please also update {{msg-mw|vector-editwarning-warning}} which references to this message.
 +{{Identical|Editing}}',
  'prefs-edit-boxsize' => 'Used on [[Special:Preferences]].',
  'rows' => 'Used on [[Special:Preferences]], "Editing" section in the "Size of editing window" fieldset',
  'columns' => 'Used on [[Special:Preferences]], "Editing" section in the "Size of editing window" fieldset',
@@@ -2539,8 -2465,7 +2539,8 @@@ This option lets your time zone settin
  'timezoneregion-atlantic' => 'Used in "Time zone" listbox in [[Special:Preferences#mw-prefsection-datetime|preferences]], "date and time" tab.
  {{Related|Timezoneregion}}',
  'timezoneregion-australia' => 'Used in "Time zone" listbox in [[Special:Preferences#mw-prefsection-datetime|preferences]], "date and time" tab.
 -{{Related|Timezoneregion}}',
 +{{Related|Timezoneregion}}
 +{{Identical|Australia}}',
  'timezoneregion-europe' => 'Used in "Time zone" listbox in [[Special:Preferences#mw-prefsection-datetime|preferences]], "date and time" tab.
  {{Related|Timezoneregion}}',
  'timezoneregion-indian' => 'Used in "Time zone" listbox in [[Special:Preferences#mw-prefsection-datetime|preferences]], "date and time" tab.
@@@ -2711,6 -2636,7 +2711,7 @@@ Parameters
  Parameters:
  * $1 - optional, for PLURAL use, the number of items in the column following the message. Avoid PLURAL, if your language allows that.',
  'userrights-irreversible-marker' => '{{optional}}',
+ 'userrights-conflict'            => 'Shown on Special:UserRights if the target\'s rights have been changed since the form was loaded.',
  
  # Groups
  'group' => '{{Identical|Group}}',
@@@ -3884,8 -3810,7 +3885,8 @@@ $1 is the name of the shared repository
  * $1 - file title
  See also:
  * {{msg-mw|Filedelete-intro}}',
 -'filedelete-legend' => '{{Identical|Delete}}',
 +'filedelete-legend' => 'Used as fieldset label in the "Delete file" form.
 +{{Identical|Delete file}}',
  'filedelete-intro' => 'Used as introduction for FileDelete form.
  See also:
  * {{msg-mw|Filedelete|page title}}',
@@@ -3978,7 -3903,7 +3979,7 @@@ Possible alternatives to the word 'cont
  
  {{Identical|Content page}}",
  'statistics-pages' => 'Used in [[Special:Statistics]]
 -{{Identical|Pages}}',
 +{{Identical|Page}}',
  'statistics-pages-desc' => "Tooltip shown over ''Pages'' (or as a note below it) in [[Special:Statistics]]",
  'statistics-files' => 'Used in [[Special:Statistics]]',
  'statistics-edits' => 'Used in [[Special:Statistics]]',
@@@ -4997,8 -4922,7 +4998,8 @@@ See also
  'contribsub2' => 'Contributions for "user" (links)
  {{Identical|For $1}}',
  'nocontribs' => 'Optional parameter: $1 is the user name',
 -'uctop' => 'This message is used in [[Special:Contributions]]. It is used to show that a particular edit was the last made to a page. Example: 09:57, 11 February 2008 (hist) (diff) Pagename‎ (edit summary) (top)',
 +'uctop' => 'This message is used in [[Special:Contributions]]. It is used to show that a particular edit was the last made to a page. Example: 09:57, 11 February 2008 (hist) (diff) Pagename‎ (edit summary) (top)
 +{{Identical|Top}}',
  'month' => 'Used in [[Special:Contributions]] and history pages ([{{fullurl:Sandbox|action=history}} example]), as label for a dropdown box to select a specific month to view the edits made in that month, and the earlier months. See also {{msg-mw|year}}.',
  'year' => 'Used in [[Special:Contributions]] and history pages ([{{fullurl:Sandbox|action=history}} example]), as label for an input box to select a specific year to view the edits made in that year, and the earlier years.
  
@@@ -7096,11 -7020,6 +7097,11 @@@ See also {{msg-mw|Days-abbrev}
  
  Part of variable $1 in {{msg-mw|Ago}}
  {{Identical|Day}}',
 +'weeks' => 'Full word for "weeks". $1 is the number of weeks.
 +
 +See also {{msg-mw|Weeks-abbrev}}
 +
 +Part of variable $1 in {{msg-mw|Ago}}',
  'months' => 'Full word for "months". $1 is the number of months.
  
  Part of variable $1 in {{msg-mw|Ago}}',
@@@ -7116,19 -7035,6 +7117,19 @@@ Part of variable $1 in {{msg-mw|Ago}}'
  *{{msg-mw|Years}}',
  'just-now' => 'Phrase for indicating something happened just now.',
  
 +# Human-readable timestamps
 +'hours-ago' => 'Phrase for indicating that something occurred a certain number of hours ago',
 +'minutes-ago' => 'Phrase for indicating that something occurred a certain number of minutes ago',
 +'seconds-ago' => 'Phrase for indicating that something occurred a certain number of seconds ago',
 +'monday-at' => 'Phrase for indicating that something occurred at a particular time on the most recent Monday. $1 is the time.',
 +'tuesday-at' => 'Phrase for indicating that something occurred at a particular time on the most recent Tuesday. $1 is the time.',
 +'wednesday-at' => 'Phrase for indicating that something occurred at a particular time on the most recent Wednesday. $1 is the time.',
 +'thursday-at' => 'Phrase for indicating that something occurred at a particular time on the most recent Thursday. $1 is the time.',
 +'friday-at' => 'Phrase for indicating that something occurred at a particular time on the most recent Friday. $1 is the time.',
 +'saturday-at' => 'Phrase for indicating that something occurred at a particular time on the most recent Saturday. $1 is the time.',
 +'sunday-at' => 'Phrase for indicating that something occurred at a particular time on the most recent Sunday. $1 is the time.',
 +'yesterday-at' => 'Phrase for indicating that something occurred at a particular time yesterday. $1 is the time.',
 +
  # Bad image list
  'bad_image_list' => 'This message only appears to guide administrators to add links with the right format. This will not appear anywhere else in MediaWiki.',
  
@@@ -7330,8 -7236,7 +7331,8 @@@ See also
  This contains how the information in the picture is stored. This is most commonly Y, Cr, Cb to specify luma, red, blue. RGB is also possible to specify Red, Green, Blue.
  {{Related|Exif-componentsconfiguration}}',
  'exif-compressedbitsperpixel' => 'Exif is a format for storing metadata in image files. See this [[w:Exchangeable_image_file_format|Wikipedia article]] and the example at the bottom of [[commons:File:Phalacrocorax-auritus-020.jpg|this page on Commons]]. The tags are explained [http://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif.html briefly] and [http://www.kodak.com/global/plugins/acrobat/en/service/digCam/exifStandard2.pdf in further detail].',
 -'exif-pixelydimension' => 'Exif is a format for storing metadata in image files. See this [[w:Exchangeable_image_file_format|Wikipedia article]] and the example at the bottom of [[commons:File:Phalacrocorax-auritus-020.jpg|this page on Commons]]. The tags are explained [http://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif.html briefly] and [http://www.kodak.com/global/plugins/acrobat/en/service/digCam/exifStandard2.pdf in further detail].',
 +'exif-pixelydimension' => 'Exif is a format for storing metadata in image files. See this [[w:Exchangeable_image_file_format|Wikipedia article]] and the example at the bottom of [[commons:File:Phalacrocorax-auritus-020.jpg|this page on Commons]]. The tags are explained [http://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif.html briefly] and [http://www.kodak.com/global/plugins/acrobat/en/service/digCam/exifStandard2.pdf in further detail].
 +{{Identical|Image width}}',
  'exif-pixelxdimension' => 'Exif is a format for storing metadata in image files. See this [[w:Exchangeable_image_file_format|Wikipedia article]] and the example at the bottom of [[commons:File:Phalacrocorax-auritus-020.jpg|this page on Commons]]. The tags are explained [http://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif.html briefly] and [http://www.kodak.com/global/plugins/acrobat/en/service/digCam/exifStandard2.pdf in further detail].',
  'exif-usercomment' => "Exif is a format for storing metadata in image files. See this [[w:Exchangeable_image_file_format|Wikipedia article]] and the example at the bottom of [[commons:File:Phalacrocorax-auritus-020.jpg|this page on Commons]]. The tags are explained [http://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif.html briefly] and [http://www.kodak.com/global/plugins/acrobat/en/service/digCam/exifStandard2.pdf in further detail].
  
@@@ -8560,28 -8465,14 +8561,28 @@@ A short description of the article pat
  'version-entrypoints-scriptpath' => '{{Optional}}
  A short description of the script path entry point. Links to the mediawiki.org documentation page for $wgScriptPath.',
  
 -# Special:FilePath
 -'filepath' => 'Legend of fieldset around input box in [[Special:FilePath]].',
 -'filepath-page' => 'Shown next to input box in [[Special:FilePath]]
 -
 -{{Identical|File}}',
 -'filepath-submit' => 'Button label in [[Special:FilePath]].
 +'redirect' => "{{doc-special|Redirect}}
 +This means \"Redirect by file'''name''', user '''ID''', or revision ID\".",
 +'redirect-legend' => 'Legend of fieldset around input box in [[Special:Redirect]]',
 +'redirect-summary' => 'Shown at top of [[Special:Redirect]]',
 +'redirect-submit' => 'Button label in [[Special:Redirect]].
  {{Identical|Go}}',
 -'filepath-summary' => 'Shown in [[Special:FilePath]]',
 +'redirect-lookup' => 'First field label in [[Special:Redirect]].
 +
 +Followed by the select box which has the following options:
 +* {{msg-mw|Redirect-user}}
 +* {{msg-mw|Redirect-revision}}
 +* {{msg-mw|Redirect-file}}',
 +'redirect-value' => 'Second field label in [[Special:Redirect]]
 +{{Identical|Value}}',
 +'redirect-user' => 'Description of lookup type for [[Special:Redirect]].
 +{{Identical|User ID}}',
 +'redirect-revision' => "Description of lookup type for [[Special:Redirect]].
 +
 +This means \"Page revision '''ID'''\".",
 +'redirect-file' => 'Description of lookup type for [[Special:Redirect]].
 +{{Identical|Filename}}',
 +'redirect-not-exists' => 'Used as error message in [[Special:Redirect]]',
  
  # Special:FileDuplicateSearch
  'fileduplicatesearch' => 'Name of special page [[Special:FileDuplicateSearch]].',
@@@ -8768,7 -8659,6 +8769,7 @@@ See also
  {{Identical|No}}',
  'htmlform-yes' => 'Used in form, such as with radio buttons, for generic yes / no questions.
  {{Identical|Yes}}',
 +'htmlform-chosen-placeholder' => 'Used as initial placeholder text in select multiple "chosen" input boxes',
  
  # SQLite database support
  'sqlite-has-fts' => 'Shown on [[Special:Version]].
@@@ -431,15 -431,10 +431,15 @@@ $wgMessageStructure = array
                'yourname',
                'userlogin-yourname',
                'userlogin-yourname-ph',
 +              'createacct-helpusername-url',
 +              'createacct-helpusername-link',
                'yourpassword',
                'userlogin-yourpassword',
                'userlogin-yourpassword-ph',
 +              'createacct-yourpassword-ph',
                'yourpasswordagain',
 +              'createacct-yourpasswordagain',
 +              'createacct-yourpasswordagain-ph',
                'remembermypassword',
                'userlogin-remembermypassword',
                'userlogin-signwithsecure',
                'userlogin-resetlink',
                'helplogin-url',
                'userlogin-helplink',
 +              'createacct-join',
 +              'createacct-emailrequired',
 +              'createacct-emailoptional',
 +              'createacct-email-ph',
                'createaccountmail',
 +              'createacct-realname',
                'createaccountreason',
 +              'createacct-reason',
 +              'createacct-captcha',
 +              'createacct-captcha-help-url',
 +              'createacct-imgcaptcha-help',
 +              'createacct-imgcaptcha-ph',
 +              'createacct-benefit-heading',
 +              'createacct-benefit-icon1',
 +              'createacct-benefit-head1',
 +              'createacct-benefit-body1',
 +              'createacct-benefit-icon2',
 +              'createacct-benefit-head2',
 +              'createacct-benefit-body2',
 +              'createacct-benefit-icon3',
 +              'createacct-benefit-head3',
 +              'createacct-benefit-body3',
                'badretype',
                'userexists',
                'loginerror',
 +              'createacct-error',
                'createaccounterror',
                'nocookiesnew',
                'nocookieslogin',
                'resetpass-submit-cancel',
                'resetpass-wrong-oldpass',
                'resetpass-temp-password',
 +              'resetpass-abort-generic',
        ),
        'passwordreset' => array(
                'passwordreset',
                'userrights-changeable-col',
                'userrights-unchangeable-col',
                'userrights-irreversible-marker',
+               'userrights-conflict',
        ),
        'group' => array(
                'group',
                'minutes',
                'hours',
                'days',
 +              'weeks',
                'months',
                'years',
                'ago',
                'just-now',
        ),
 +      'human-timestamps' => array(
 +              'hours-ago',
 +              'minutes-ago',
 +              'seconds-ago',
 +              'monday-at',
 +              'tuesday-at',
 +              'wednesday-at',
 +              'thursday-at',
 +              'friday-at',
 +              'saturday-at',
 +              'sunday-at',
 +              'today-at',
 +              'yesterday-at',
 +      ),
        'badimagelist' => array(
                'bad_image_list',
        ),
                'version-entrypoints-api-php',
                'version-entrypoints-load-php',
        ),
 -      'filepath' => array(
 -              'filepath',
 -              'filepath-page',
 -              'filepath-submit',
 -              'filepath-summary',
 +      'redirect' => array(
 +              'redirect',
 +              'redirect-legend',
 +              'redirect-text',
 +              'redirect-summary',
 +              'redirect-submit',
 +              'redirect-lookup',
 +              'redirect-value',
 +              'redirect-user',
 +              'redirect-revision',
 +              'redirect-file',
 +              'redirect-not-exists',
        ),
        'fileduplicatesearch' => array(
                'fileduplicatesearch',
                'htmlform-selectorother-other',
                'htmlform-no',
                'htmlform-yes',
 +              'htmlform-chosen-placeholder',
        ),
        'sqlite' => array(
                'sqlite-has-fts',
@@@ -4021,9 -3972,8 +4022,9 @@@ XHTML id names."
        'patrol-log'          => 'Patrol log',
        'imagedeletion'       => 'Image deletion',
        'browsediffs'         => 'Browsing diffs',
 -      'newfiles'           => 'Special:NewFiles',
 +      'newfiles'            => 'Special:NewFiles',
        'video-info'          => 'Video information, used by Language::formatTimePeriod() to format lengths in the above messages',
 +      'human-timestamps'    => 'Human-readable timestamps',
        'badimagelist'        => 'Bad image list',
        'variantname-zh'      => "Short names for language variants used for language conversion links.
  Variants for Chinese language",
        'signatures'            => 'Signatures',
        'CoreParserFunctions'   => 'Core parser functions',
        'version'               => 'Special:Version',
 -      'filepath'              => 'Special:FilePath',
        'fileduplicatesearch'   => 'Special:FileDuplicateSearch',
        'special-specialpages'  => 'Special:SpecialPages',
        'special-blank'         => 'Special:BlankPage',