Revert "Replace Linker::link() usage with LinkRenderer"
authorEBernhardson <ebernhardson@wikimedia.org>
Fri, 9 Dec 2016 16:53:42 +0000 (16:53 +0000)
committerEBernhardson <ebernhardson@wikimedia.org>
Fri, 9 Dec 2016 16:55:40 +0000 (16:55 +0000)
Most links on Special:Search no longer have links with text rendered.
Please revert this revert and fix the issue before re-merging.

This reverts commit f736c3709a54be33f808e8d12f85707b90763165.

Change-Id: Id92c484adc1d3339f9412bfb60ffe213cc1315ee

includes/specials/SpecialRecentchanges.php
includes/specials/SpecialRevisiondelete.php
includes/specials/SpecialSearch.php
includes/specials/SpecialUncategorizedcategories.php
includes/specials/SpecialUnwatchedpages.php
includes/specials/SpecialWhatlinkshere.php

index 66c5145..cd3299c 100644 (file)
@@ -664,11 +664,12 @@ class SpecialRecentChanges extends ChangesListSpecialPage {
                }
                unset( $value );
 
+               $text = htmlspecialchars( $title );
                if ( $active ) {
-                       $title = new HtmlArmor( '<strong>' . htmlspecialchars( $title ) . '</strong>' );
+                       $text = '<strong>' . $text . '</strong>';
                }
 
-               return $this->getLinkRenderer()->makeKnownLink( $this->getPageTitle(), $title, [], $params );
+               return Linker::linkKnown( $this->getPageTitle(), $text, [], $params );
        }
 
        /**
index 4b0fa00..8780c56 100644 (file)
@@ -466,9 +466,9 @@ class SpecialRevisionDelete extends UnlistedSpecialPage {
                                Xml::closeElement( 'form' ) . "\n";
                        // Show link to edit the dropdown reasons
                        if ( $this->getUser()->isAllowed( 'editinterface' ) ) {
-                               $link = $this->getLinkRenderer()->makeKnownLink(
+                               $link = Linker::linkKnown(
                                        $this->msg( 'revdelete-reason-dropdown' )->inContentLanguage()->getTitle(),
-                                       $this->msg( 'revdelete-edit-reasonlist' )->text(),
+                                       $this->msg( 'revdelete-edit-reasonlist' )->escaped(),
                                        [],
                                        [ 'action' => 'edit' ]
                                );
index f4e0b5b..9f83832 100644 (file)
@@ -499,16 +499,9 @@ class SpecialSearch extends SpecialPage {
                }
                $stParams = array_merge( $params, $this->powerSearchOptions() );
 
-               $linkRenderer = $this->getLinkRenderer();
-
-               $snippet = $textMatches->getSuggestionSnippet() ?: null;
-               if ( $snippet ) {
-                       $snippet = new HtmlArmor( $snippet );
-               }
-
-               $suggest = $linkRenderer->makeKnownLink(
+               $suggest = Linker::linkKnown(
                        $this->getPageTitle(),
-                       $snippet,
+                       $textMatches->getSuggestionSnippet() ?: null,
                        [ 'id' => 'mw-search-DYM-suggestion' ],
                        $stParams
                );
@@ -542,25 +535,18 @@ class SpecialSearch extends SpecialPage {
                }
                $stParams = array_merge( $params, $this->powerSearchOptions() );
 
-               $linkRenderer = $this->getLinkRenderer();
-
-               $snippet = $textMatches->getQueryAfterRewriteSnippet() ?: null;
-               if ( $snippet ) {
-                       $snippet = new HtmlArmor( $snippet );
-               }
-
-               $rewritten = $linkRenderer->makeKnownLink(
+               $rewritten = Linker::linkKnown(
                        $this->getPageTitle(),
-                       $snippet,
+                       $textMatches->getQueryAfterRewriteSnippet() ?: null,
                        [ 'id' => 'mw-search-DYM-rewritten' ],
                        $stParams
                );
 
                $stParams['search'] = $term;
                $stParams['runsuggestion'] = 0;
-               $original = $linkRenderer->makeKnownLink(
+               $original = Linker::linkKnown(
                        $this->getPageTitle(),
-                       $term,
+                       htmlspecialchars( $term ),
                        [ 'id' => 'mw-search-DYM-original' ],
                        $stParams
                );
@@ -780,11 +766,9 @@ class SpecialSearch extends SpecialPage {
                Hooks::run( 'ShowSearchHitTitle',
                        [ &$link_t, &$titleSnippet, $result, $terms, $this, &$query ] );
 
-               $linkRenderer = $this->getLinkRenderer();
-
-               $link = $linkRenderer->makeKnownLink(
+               $link = Linker::linkKnown(
                        $link_t,
-                       new HtmlArmor( $titleSnippet ),
+                       $titleSnippet,
                        [ 'data-serp-pos' => $position ], // HTML attributes
                        $query
                );
@@ -818,7 +802,7 @@ class SpecialSearch extends SpecialPage {
 
                        $redirect = "<span class='searchalttitle'>" .
                                $this->msg( 'search-redirect' )->rawParams(
-                                       $linkRenderer->makeKnownLink( $redirectTitle, new HtmlArmor( $redirectText ) ) )->text() .
+                                       Linker::linkKnown( $redirectTitle, $redirectText ) )->text() .
                                "</span>";
                }
 
@@ -830,7 +814,7 @@ class SpecialSearch extends SpecialPage {
 
                        $section = "<span class='searchalttitle'>" .
                                $this->msg( 'search-section' )->rawParams(
-                                       $linkRenderer->makeKnownLink( $sectionTitle, new HtmlArmor( $sectionText ) ) )->text() .
+                                       Linker::linkKnown( $sectionTitle, $sectionText ) )->text() .
                                "</span>";
                }
 
@@ -987,8 +971,6 @@ class SpecialSearch extends SpecialPage {
                        return '';
                }
 
-               $linkRenderer = $this->getLinkRenderer();
-
                $title = $result->getTitle();
 
                $titleSnippet = $result->getTitleSnippet();
@@ -997,9 +979,9 @@ class SpecialSearch extends SpecialPage {
                        $titleSnippet = null;
                }
 
-               $link = $linkRenderer->makeKnownLink(
+               $link = Linker::linkKnown(
                        $title,
-                       new HtmlArmor( $titleSnippet )
+                       $titleSnippet
                );
 
                // format redirect if any
@@ -1013,7 +995,7 @@ class SpecialSearch extends SpecialPage {
 
                        $redirect = "<span class='searchalttitle'>" .
                                $this->msg( 'search-redirect' )->rawParams(
-                                       $linkRenderer->makeKnownLink( $redirectTitle, new HtmlArmor( $redirectText ) ) )->text() .
+                                       Linker::linkKnown( $redirectTitle, $redirectText ) )->text() .
                                "</span>";
                }
 
@@ -1031,7 +1013,7 @@ class SpecialSearch extends SpecialPage {
                        }
                        // "more results" link (special page stuff could be localized, but we might not know target lang)
                        $searchTitle = Title::newFromText( $title->getInterwiki() . ":Special:Search" );
-                       $searchLink = $linkRenderer->makeKnownLink(
+                       $searchLink = Linker::linkKnown(
                                $searchTitle,
                                $this->msg( 'search-interwiki-more' )->text(),
                                [],
index 86d8f89..1cc40a9 100644 (file)
@@ -42,6 +42,6 @@ class UncategorizedCategoriesPage extends UncategorizedPagesPage {
                $title = Title::makeTitle( NS_CATEGORY, $result->title );
                $text = $title->getText();
 
-               return $this->getLinkRenderer()->makeKnownLink( $title, $text );
+               return Linker::linkKnown( $title, htmlspecialchars( $text ) );
        }
 }
index 96878a3..ae375b2 100644 (file)
@@ -116,12 +116,10 @@ class UnwatchedpagesPage extends QueryPage {
 
                $text = $wgContLang->convert( $nt->getPrefixedText() );
 
-               $linkRenderer = $this->getLinkRenderer();
-
-               $plink = $linkRenderer->makeKnownLink( $nt, $text );
-               $wlink = $linkRenderer->makeKnownLink(
+               $plink = Linker::linkKnown( $nt, htmlspecialchars( $text ) );
+               $wlink = Linker::linkKnown(
                        $nt,
-                       $this->msg( 'watch' )->text(),
+                       $this->msg( 'watch' )->escaped(),
                        [ 'class' => 'mw-watch-link' ],
                        [ 'action' => 'watch' ]
                );
index 3349854..1ead290 100644 (file)
@@ -327,7 +327,7 @@ class SpecialWhatLinksHere extends IncludableSpecialPage {
                        $query = [];
                }
 
-               $link = $this->getLinkRenderer()->makeKnownLink(
+               $link = Linker::linkKnown(
                        $nt,
                        null,
                        $row->page_is_redirect ? [ 'class' => 'mw-redirect' ] : [],
@@ -376,13 +376,11 @@ class SpecialWhatLinksHere extends IncludableSpecialPage {
                        $title = $this->getPageTitle();
                }
 
-               $linkRenderer = $this->getLinkRenderer();
-
                // always show a "<- Links" link
                $links = [
-                       'links' => $linkRenderer->makeKnownLink(
+                       'links' => Linker::linkKnown(
                                $title,
-                               new HtmlArmor( $text ),
+                               $text,
                                [],
                                [ 'target' => $target->getPrefixedText() ]
                        ),
@@ -395,9 +393,9 @@ class SpecialWhatLinksHere extends IncludableSpecialPage {
                        // check, if the content model is editable through action=edit
                        ContentHandler::getForTitle( $target )->supportsDirectEditing()
                ) {
-                       $links['edit'] = $linkRenderer->makeKnownLink(
+                       $links['edit'] = Linker::linkKnown(
                                $target,
-                               new HtmlArmor( $editText ),
+                               $editText,
                                [],
                                [ 'action' => 'edit' ]
                        );
@@ -408,9 +406,9 @@ class SpecialWhatLinksHere extends IncludableSpecialPage {
        }
 
        function makeSelfLink( $text, $query ) {
-               return $this->getLinkRenderer()->makeKnownLink(
+               return Linker::linkKnown(
                        $this->selfTitle,
-                       new HtmlArmor( $text ),
+                       $text,
                        [],
                        $query
                );