Merge "Remove User::getPageRenderingHash, deprecated since 1.17"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Fri, 22 Nov 2013 18:51:42 +0000 (18:51 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Fri, 22 Nov 2013 18:51:42 +0000 (18:51 +0000)
RELEASE-NOTES-1.23
includes/Article.php
includes/OutputPage.php
includes/Skin.php
includes/specials/SpecialChangePassword.php
languages/messages/MessagesCe.php
languages/messages/MessagesEn.php
languages/messages/MessagesQqq.php
resources/mediawiki/mediawiki.Title.js
tests/qunit/suites/resources/mediawiki/mediawiki.Title.test.js

index 119a30c..806883d 100644 (file)
@@ -49,10 +49,6 @@ production.
   when the email address is already confirmed. Also, consistently use
   "confirmed", rather than "authenticated", when messaging whether or not the
   user has confirmed an email address.
-* (bug 19415) action=render no longer shows section edit links. This affects
-  behavior of several other features where (bogus) section edit links will
-  disappear, such as file description pages loaded via $wgUseInstantCommons or
-  pages transcluded cross-wiki via $wgEnableScaryTranscluding.
 * (bug 56912) Show correct link color on cached result of Special:DeadendPages.
 * Classes TitleListDependency and TitleDependency have been removed, as they
   have been found unused in core and extensions for a long time.
index 854f7f1..ecbc59f 100644 (file)
@@ -1478,7 +1478,6 @@ class Article implements Page {
         */
        public function render() {
                $this->getContext()->getOutput()->setArticleBodyOnly( true );
-               $this->getContext()->getOutput()->enableSectionEditLinks( false );
                $this->view();
        }
 
index 638887b..2c4c64e 100644 (file)
@@ -256,15 +256,10 @@ class OutputPage extends ContextSource {
        private $mTarget = null;
 
        /**
-        * @var bool: Whether parser output should contain table of contents
+        * @var bool: Whether output should contain table of contents
         */
        private $mEnableTOC = true;
 
-       /**
-        * @var bool: Whether parser output should contain section edit links
-        */
-       private $mEnableSectionEditLinks = true;
-
        /**
         * Constructor for OutputPage. This should not be called directly.
         * Instead a new RequestContext should be created and it will implicitly create
@@ -1617,7 +1612,6 @@ class OutputPage extends ContextSource {
        function addParserOutput( &$parserOutput ) {
                $this->addParserOutputNoText( $parserOutput );
                $parserOutput->setTOCEnabled( $this->mEnableTOC );
-               $parserOutput->setEditSectionTokens( $this->mEnableSectionEditLinks );
                $text = $parserOutput->getText();
                wfRunHooks( 'OutputPageBeforeHTML', array( &$this, &$text ) );
                $this->addHTML( $text );
@@ -3678,21 +3672,4 @@ $templates
        public function isTOCEnabled() {
                return $this->mEnableTOC;
        }
-
-       /**
-        * Enables/disables section edit links, doesn't override __NOEDITSECTION__
-        * @param bool $flag
-        * @since 1.23
-        */
-       public function enableSectionEditLinks( $flag = true ) {
-               $this->mEnableSectionEditLinks = $flag;
-       }
-
-       /**
-        * @return bool
-        * @since 1.23
-        */
-       public function sectionEditLinksEnabled() {
-               return $this->mEnableSectionEditLinks;
-       }
 }
index a71bafc..750f319 100644 (file)
@@ -1394,8 +1394,8 @@ abstract class Skin extends ContextSource {
                                // Singular if no revision -> diff link will show latest change only in any case
                                $plural = false;
                        }
-                       $plural = $plural ? 2 : 1;
-                       // 2 signifies "more than one revision". We don't know how many, and even if we did,
+                       $plural = $plural ? 999 : 1;
+                       // 999 signifies "more than one revision". We don't know how many, and even if we did,
                        // the number of revisions or authors is not necessarily the same as the number of
                        // "messages".
                        $newMessagesLink = Linker::linkKnown(
index 8b96e6c..43a4d2c 100644 (file)
@@ -99,7 +99,7 @@ class SpecialChangePassword extends UnlistedSpecialPage {
                                                'wpLoginToken' => $token,
                                                'wpPassword' => $request->getVal( 'wpNewPassword' ),
                                        ) + $request->getValues( 'wpRemember', 'returnto', 'returntoquery' );
-                                       $login = new LoginForm( new FauxRequest( $data, true ) );
+                                       $login = new LoginForm( new DerivativeRequest( $request, $data, true ) );
                                        $login->setContext( $this->getContext() );
                                        $login->execute( null );
                                }
index 6c149e3..dac46bf 100644 (file)
@@ -75,54 +75,52 @@ $specialPageAliases = array(
        'Activeusers'               => array( 'Жигара_декъашхой' ),
        'Allmessages'               => array( 'ГӀирса_хаамаш' ),
        'Allpages'                  => array( 'Массо_агӀонаш' ),
-       'Ancientpages'              => array( 'Яззамаш_оцу_терахьца_тяххьара_тадар_дина_долу' ),
+       'Ancientpages'              => array( 'Яззамаш_оцу_терахьца_тӀаьххьара_тадар_дина_долу' ),
        'Badtitle'                  => array( 'Хилийта_йиш_йоцу_цӀе' ),
        'Blankpage'                 => array( 'Еса_агӀо' ),
        'Block'                     => array( 'Блоктоха' ),
-       'Blockme'                   => array( 'Блоктоха_суна' ),
-       'Booksources'               => array( 'Жайнашан_хьосташ' ),
+       'Booksources'               => array( 'Жайнийн_хьосташ' ),
        'BrokenRedirects'           => array( 'ДIахаьдна_долу_дIасахьажораш' ),
        'Categories'                => array( 'Категореш' ),
        'ChangeEmail'               => array( 'Хийца_e-mail' ),
-       'ChangePassword'            => array( 'ХийÑ\86а_иÑ\88аÑ\80' ),
+       'ChangePassword'            => array( 'ХийÑ\86а_паÑ\80олÑ\8c' ),
        'ComparePages'              => array( 'АгӀонаш_юстар' ),
        'Confirmemail'              => array( 'Бакъе_e-mail' ),
        'Contributions'             => array( 'Къинхьегам' ),
-       'CreateAccount'             => array( 'Кхолла_декъашхон_дӀаяздар' ),
+       'CreateAccount'             => array( 'Кхолла_декъашхочун_дӀаяздар' ),
        'Deadendpages'              => array( 'Дика_йоцу_агӀонаш' ),
-       'DeletedContributions'      => array( 'ДӀабяхкина_къинхьегам' ),
-       'Disambiguations'           => array( 'Цхьатера_маьӀна_дерш' ),
-       'DoubleRedirects'           => array( 'ШалгӀа_дӀасахьажийнарш' ),
+       'DeletedContributions'      => array( 'ДӀабаьккхина_къинхьегам' ),
+       'DoubleRedirects'           => array( 'Шалха_дӀасахьажийнарш' ),
        'EditWatchlist'             => array( 'Табе_тергаме_могӀам' ),
        'Emailuser'                 => array( 'Декъашхочунга_кехат' ),
        'Export'                    => array( 'Экспорт' ),
-       'Fewestrevisions'           => array( 'Наггахь_беш_болу_хицамаш' ),
+       'Fewestrevisions'           => array( 'Наггахь_беш_болу_хийцамаш' ),
        'FileDuplicateSearch'       => array( 'Цхьатера_файлаш_лахар' ),
        'Filepath'                  => array( 'Файл_йолче' ),
        'Import'                    => array( 'Импорт' ),
        'Invalidateemail'           => array( 'Адрес_бакъдар_юхадаккха' ),
        'JavaScriptTest'            => array( 'JavaScript_тестировать_ян' ),
        'BlockList'                 => array( 'Блоктоьхнарш' ),
-       'LinkSearch'                => array( 'Ð¥Ñ\8cажоÑ\80игаш_лахар' ),
-       'Listadmins'                => array( 'Куьгалхойн_могӀам' ),
+       'LinkSearch'                => array( 'Ð¥Ñ\8cажоÑ\80агаш_лахар' ),
+       'Listadmins'                => array( 'Ð\9aÑ\83Ñ\8cйгалÑ\85ойн_могÓ\80ам' ),
        'Listbots'                  => array( 'Шаболх_бечара_могӀам' ),
-       'Listfiles'                 => array( 'Файланши_могӀам' ),
-       'Listgrouprights'           => array( 'Декъашхошан_бакъонаш' ),
+       'Listfiles'                 => array( 'Файлаш' ),
+       'Listgrouprights'           => array( 'Декъашхойн_бакъонаш' ),
        'Listredirects'             => array( 'ДIасахьажоран_могIам' ),
        'Listusers'                 => array( 'Декъашхойн_могӀам' ),
        'Lockdb'                    => array( 'Хааман_базан_блоктохар' ),
        'Log'                       => array( 'Тептарш' ),
-       'Lonelypages'               => array( 'Байлахь_йисина_агIонаш' ),
+       'Lonelypages'               => array( 'Байлахь_йисина_агӀонаш' ),
        'Longpages'                 => array( 'Беха_яззамаш' ),
-       'MergeHistory'              => array( 'ЦÑ\85Ñ\8cаÑ\8cнаÑ\82оÑ\8cÑ\85на_каÑ\82егоÑ\80еÑ\88' ),
+       'MergeHistory'              => array( 'Ð\98Ñ\81Ñ\82оÑ\80и_Ñ\86Ñ\85Ñ\8cаÑ\8cнаÑ\82оÑ\85аÑ\80' ),
        'MIMEsearch'                => array( 'MIME_чухула_лахар' ),
        'Mostcategories'            => array( 'Дуккха_категореш_тӀе_тоьхна_йолу_агӀонаш' ),
        'Mostimages'                => array( 'Массарел_дуккха_лелайо_файлаш' ),
-       'Mostinterwikis'            => array( 'Ð\94Ñ\83кÑ\85а_Ñ\8eкÑ\8aаÑ\80вики_Ñ\85Ñ\8cажоÑ\80игаш' ),
-       'Mostlinked'                => array( 'Ð\94Ñ\83ккÑ\85а_Ñ\85Ñ\8cажоÑ\80игаÑ\88\82Iе_Ñ\82оÑ\8cÑ\85на_йолÑ\83_агIонаш' ),
+       'Mostinterwikis'            => array( 'Ð\94Ñ\83кÑ\85а_Ñ\8eкÑ\8aаÑ\80вики_Ñ\85Ñ\8cажоÑ\80агаш' ),
+       'Mostlinked'                => array( 'Ð\94Ñ\83ккÑ\85а_Ñ\85Ñ\8cажоÑ\80агаÑ\88\82Ó\80е_Ñ\82оÑ\8cÑ\85на_йолÑ\83_агÓ\80онаш' ),
        'Mostlinkedcategories'      => array( 'Дуккха_тӀе_хьажораш_йолу_категореш' ),
        'Mostlinkedtemplates'       => array( 'Массарел_дуккха_а_леладо_кепаш' ),
-       'Mostrevisions'             => array( 'Сих_сиха_нисйина_йолу_агIонаш' ),
+       'Mostrevisions'             => array( 'Сих_сиха_нисйина_йолу_агӀонаш' ),
        'Movepage'                  => array( 'АгӀона_цӀе_хийцар' ),
        'Mycontributions'           => array( 'Сан_къинхьегам' ),
        'Mypage'                    => array( 'Сан_агӀо' ),
@@ -130,26 +128,27 @@ $specialPageAliases = array(
        'Myuploads'                 => array( 'Сан_файлаш' ),
        'Newimages'                 => array( 'Керла_файлаш' ),
        'Newpages'                  => array( 'Керла_агӀонаш' ),
-       'PermanentLink'             => array( 'Гуттарлера_хьажориг' ),
-       'Popularpages'              => array( 'ГӀарялла_агӀонаш' ),
+       'PasswordReset'             => array( 'Пароль_кхоссар' ),
+       'PermanentLink'             => array( 'Гуттарлера_хьажораг' ),
+       'Popularpages'              => array( 'ГӀараяьлла_агӀонаш' ),
        'Preferences'               => array( 'ГӀирсаш' ),
-       'Prefixindex'               => array( 'Хьалха_агIонашан_цIераш_хIотто_йеза' ),
-       'Protectedpages'            => array( 'ГIаролла_дина_агIонаш' ),
-       'Protectedtitles'           => array( 'ГIаролла_дина_цIераш' ),
+       'Prefixindex'               => array( 'Хьалха_агӀонийн_цӀераш_хӀотто_еза' ),
+       'Protectedpages'            => array( 'ГӀаролла_дина_агӀонаш' ),
+       'Protectedtitles'           => array( 'ГӀаролла_дина_цӀераш' ),
        'Randompage'                => array( 'Цахууш_нисйелла_агIо' ),
        'Randomredirect'            => array( 'Цахууш_нисделла_дIасахьажор' ),
        'Recentchanges'             => array( 'Керла_нисдарш' ),
        'Recentchangeslinked'       => array( 'Кхуьнца_долу_нисдарш' ),
        'Revisiondelete'            => array( 'ДӀадяхна_нисдарш' ),
        'Search'                    => array( 'Лахар' ),
-       'Shortpages'                => array( 'Ð\91оÑ\86оа_Ñ\8fззамаÑ\88' ),
+       'Shortpages'                => array( 'Боца_яззамаш' ),
        'Specialpages'              => array( 'Леррина_агӀонаш' ),
        'Statistics'                => array( 'Бухехьдерг' ),
        'Tags'                      => array( 'Билгалонаш' ),
-       'Unblock'                   => array( 'БлокдӀаякхар' ),
+       'Unblock'                   => array( 'БлокдӀаяккхар' ),
        'Uncategorizedcategories'   => array( 'Категореш_йоцу_категореш' ),
        'Uncategorizedimages'       => array( 'Категореш_йоцу_файлаш' ),
-       'Uncategorizedpages'        => array( 'Категореш_йоцу_агIонаш' ),
+       'Uncategorizedpages'        => array( 'Категореш_йоцу_агӀонаш' ),
        'Uncategorizedtemplates'    => array( 'Категореш_йоцу_кепаш' ),
        'Undelete'                  => array( 'МеттахӀоттор' ),
        'Unlockdb'                  => array( 'БлокдӀаякхар_ХБ' ),
@@ -158,17 +157,17 @@ $specialPageAliases = array(
        'Unusedtemplates'           => array( 'Лелош_доцу_кепаш' ),
        'Upload'                    => array( 'Файл_чуяккхар' ),
        'UploadStash'               => array( 'ДӀахьулйина_файл_чуяккхар' ),
-       'Userlogin'                 => array( 'ЧÑ\83валаÑ\80\8fлар' ),
-       'Userlogout'                => array( 'Ð\90Ñ\80авалаÑ\80\8fлар' ),
+       'Userlogin'                 => array( 'ЧÑ\83далар' ),
+       'Userlogout'                => array( 'Ð\90Ñ\80адалар' ),
        'Userrights'                => array( 'Бакъона_урхалладар' ),
        'Version'                   => array( 'Верси' ),
        'Wantedcategories'          => array( 'Оьшуш_йолу_категореш' ),
        'Wantedfiles'               => array( 'Оьшуш_йолу_файлаш' ),
-       'Wantedpages'               => array( 'Оьшуш_йолу_агIонаш' ),
+       'Wantedpages'               => array( 'Оьшуш_йолу_агӀонаш' ),
        'Wantedtemplates'           => array( 'Оьшуш_йолу_кепаш' ),
        'Watchlist'                 => array( 'Тергаме_могӀам' ),
        'Whatlinkshere'             => array( 'Хьажоригаш_кхузе' ),
-       'Withoutinterwiki'          => array( 'Ð\9aÑ\85еÑ\87Ñ\83_меÑ\82Ñ\82анаÑ\88ан_Ñ\85Ñ\8cажоÑ\80иг_йоÑ\86Ñ\83_агIонаш' ),
+       'Withoutinterwiki'          => array( 'ЮкÑ\8aаÑ\80вики_Ñ\85Ñ\8cажоÑ\80агаÑ\88_йоÑ\86Ñ\83_агÓ\80онаш' ),
 );
 
 $magicWords = array(
index 5fd0b06..dfbc498 100644 (file)
@@ -943,8 +943,8 @@ See [[Special:Version|version page]].',
 'newmessagesdifflink'          => 'last change',
 'youhavenewmessagesfromusers'  => 'You have $1 from {{PLURAL:$3|another user|$3 users}} ($2).',
 'youhavenewmessagesmanyusers'  => 'You have $1 from many users ($2).',
-'newmessageslinkplural'        => '{{PLURAL:$1|a new message|new messages}}',
-'newmessagesdifflinkplural'    => 'last {{PLURAL:$1|change|changes}}',
+'newmessageslinkplural'        => '{{PLURAL:$1|a new message|999=new messages}}',
+'newmessagesdifflinkplural'    => 'last {{PLURAL:$1|change|999=changes}}',
 'youhavenewmessagesmulti'      => 'You have new messages on $1',
 'newtalkseparator'             => ',&#32;', # do not translate or duplicate this message to other languages
 'editsection'                  => 'edit',
index 61b298b..e746427 100644 (file)
@@ -857,17 +857,19 @@ See also:
 Used as <code>$1</code> in {{msg-mw|Youhavenewmessagesfromusers}}.
 
 Parameters:
-* $1 - 1 or 2:
+* $1 - 1 or 999:
 ** 1 - if there was '''one''' new edit since the last time the user has seen their talk page
-** 2 - if there was '''more than one''' new edit since the last time the user has seen their talk page
+** 999 - if there was '''more than one''' new edit since the last time the user has seen their talk page
 {{Identical|New messages}}",
-'newmessagesdifflinkplural' => 'Parameters:
-* $1 - the number of new edits since the last time the user has seen their talk page: it should be used only for correct [[plural]] as in the source text, as the exact number is not relevant.
-
-Like {{msg-mw|Newmessagesdifflink}} but supporting pluralization.
+'newmessagesdifflinkplural' => "Like {{msg-mw|Newmessagesdifflink}} but supporting pluralization.
 
 Used as <code>$2</code> in message {{msg-mw|Youhavenewmessagesfromusers}}.
-{{Identical|Last change}}',
+
+Parameters:
+* $1 - 1 or 999:
+** 1 - if there was '''one''' new edit since the last time the user has seen their talk page
+** 999 - if there was '''more than one''' new edit since the last time the user has seen their talk page
+{{Identical|Last change}}",
 'youhavenewmessagesmulti' => 'The alternative of {{msg-mw|youhavenewmessages}} as used on wikis with a special setup so they can receive the "new message" notice on other wikis as well. Used on [http://www.wikia.com/ Wikia].
 
 The format is: "{{int:youhavenewmessagesmulti| [[MediaWiki:Newmessageslink/{{SUBPAGENAME}}|{{int:newmessageslink}}]]}}"
index dde5abf..e25848a 100644 (file)
                        thumbPhpRegex = /thumb\.php/,
                        regexes = [
                                // Thumbnails
-                               /\/[a-f0-9]\/[a-f0-9]{2}\/([^\s\/]+)\/[^\s\/]+-\1[^\s\/]*$/,
+                               /\/[a-f0-9]\/[a-f0-9]{2}\/([^\s\/]+)\/[^\s\/]+-(?:\1|thumbnail)[^\s\/]*$/,
 
                                // Thumbnails in non-hashed upload directories
-                               /\/([^\s\/]+)\/[^\s\/]+-\1[^\s\/]*$/,
+                               /\/([^\s\/]+)\/[^\s\/]+-(?:\1|thumbnail)[^\s\/]*$/,
 
                                // Full size images
                                /\/[a-f0-9]\/[a-f0-9]{2}\/([^\s\/]+)$/,
index f0bb0fc..1b7fea6 100644 (file)
                assert.equal( title.getUrl(), '/wiki/User_talk:John_Doe', 'Escaping in title and namespace for urls' );
        } );
 
-       QUnit.test( 'newFromImg', 36, function ( assert ) {
+       QUnit.test( 'newFromImg', 40, function ( assert ) {
                var title, i, thisCase, prefix,
                        cases = [
+                               {
+                                       url: '//upload.wikimedia.org/wikipedia/commons/thumb/b/bf/Princess_Alexandra_of_Denmark_%28later_Queen_Alexandra%2C_wife_of_Edward_VII%29_with_her_two_eldest_sons%2C_Prince_Albert_Victor_%28Eddy%29_and_George_Frederick_Ernest_Albert_%28later_George_V%29.jpg/939px-thumbnail.jpg',
+                                       typeOfUrl: 'Hashed thumb with shortened path',
+                                       nameText: 'Princess Alexandra of Denmark (later Queen Alexandra, wife of Edward VII) with her two eldest sons, Prince Albert Victor (Eddy) and George Frederick Ernest Albert (later George V)',
+                                       prefixedText: 'File:Princess Alexandra of Denmark (later Queen Alexandra, wife of Edward VII) with her two eldest sons, Prince Albert Victor (Eddy) and George Frederick Ernest Albert (later George V).jpg'
+                               },
                                {
                                        url: '/wiki/images/thumb/9/91/Anticlockwise_heliotrope%27s.jpg/99px-Anticlockwise_heliotrope%27s.jpg',
                                        typeOfUrl: 'Normal hashed directory thumbnail',