Merge "Revert "Use display name in category page subheadings if provided""
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Tue, 8 Nov 2016 23:55:35 +0000 (23:55 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Tue, 8 Nov 2016 23:55:35 +0000 (23:55 +0000)
1  2 
includes/CategoryViewer.php

@@@ -19,7 -19,6 +19,7 @@@
   *
   * @file
   */
 +use MediaWiki\MediaWikiServices;
  
  class CategoryViewer extends ContextSource {
        /** @var int */
        }
  
        function doCategoryQuery() {
 -              $dbr = wfGetDB( DB_SLAVE, 'category' );
 +              $dbr = wfGetDB( DB_REPLICA, 'category' );
  
                $this->nextPage = [
                        'page' => null,
  
                        $res = $dbr->select(
                                [ 'page', 'categorylinks', 'category' ],
 -                              [ 'page_id', 'page_title', 'page_namespace', 'page_len',
 -                                      'page_is_redirect', 'cl_sortkey', 'cat_id', 'cat_title',
 -                                      'cat_subcats', 'cat_pages', 'cat_files',
 -                                      'cl_sortkey_prefix', 'cl_collation' ],
 +                              array_merge(
 +                                      LinkCache::getSelectFields(),
 +                                      [
 +                                              'page_namespace',
 +                                              'page_title',
 +                                              'cl_sortkey',
 +                                              'cat_id',
 +                                              'cat_title',
 +                                              'cat_subcats',
 +                                              'cat_pages',
 +                                              'cat_files',
 +                                              'cl_sortkey_prefix',
 +                                              'cl_collation'
 +                                      ]
 +                              ),
                                array_merge( [ 'cl_to' => $this->title->getDBkey() ], $extraConds ),
                                __METHOD__,
                                [
                        );
  
                        Hooks::run( 'CategoryViewer::doCategoryQuery', [ $type, $res ] );
 +                      $linkCache = MediaWikiServices::getInstance()->getLinkCache();
  
                        $count = 0;
                        foreach ( $res as $row ) {
                                $title = Title::newFromRow( $row );
 +                              $linkCache->addGoodLinkObjFromRow( $title, $row );
 +
                                if ( $row->cl_collation === '' ) {
                                        // Hack to make sure that while updating from 1.16 schema
                                        // and db is inconsistent, that the sky doesn't fall.
                return $r;
        }
  
-       /**
-        * Return pretty name which is display name if given and different from prefix text or
-        * the unprefixed page name.
-        *
-        * @return string HTML safe name.
-        */
-       function getPrettyPageNameHtml() {
-               $displayTitle = $this->getOutput()->getPageTitle();
-               if ( $displayTitle === $this->getTitle()->getPrefixedText() ) {
-                       return htmlspecialchars( $this->getTitle()->getText() );
-               } else {
-                       return $displayTitle;
-               }
-       }
        /**
         * @return string
         */
        function getPagesSection() {
-               $name = $this->getPrettyPageNameHtml();
+               $ti = wfEscapeWikiText( $this->title->getText() );
                # Don't show articles section if there are none.
                $r = '';
  
  
                if ( $rescnt > 0 ) {
                        $r = "<div id=\"mw-pages\">\n";
-                       $r .= '<h2>' . $this->msg( 'category_header' )->rawParams( $name )->parse() . "</h2>\n";
+                       $r .= '<h2>' . $this->msg( 'category_header', $ti )->parse() . "</h2>\n";
                        $r .= $countmsg;
                        $r .= $this->getSectionPagingLinks( 'page' );
                        $r .= $this->formatList( $this->articles, $this->articles_start_char );
         * @return string
         */
        function getImageSection() {
-               $name = $this->getPrettyPageNameHtml();
                $r = '';
                $rescnt = $this->showGallery ? $this->gallery->count() : count( $this->imgsNoGallery );
                $dbcnt = $this->cat->getFileCount();
                if ( $rescnt > 0 ) {
                        $r .= "<div id=\"mw-category-media\">\n";
                        $r .= '<h2>' .
-                               $this->msg( 'category-media-header' )->rawParams( $name )->parse() .
+                               $this->msg(
+                                       'category-media-header',
+                                       wfEscapeWikiText( $this->title->getText() )
+                               )->text() .
                                "</h2>\n";
                        $r .= $countmsg;
                        $r .= $this->getSectionPagingLinks( 'file' );