MediaWiki  master
SpecialMostLinkedCategories.php
Go to the documentation of this file.
1 <?php
30 
37  function __construct( $name = 'Mostlinkedcategories' ) {
38  parent::__construct( $name );
39  }
40 
41  function isSyndicated() {
42  return false;
43  }
44 
45  public function getQueryInfo() {
46  return [
47  'tables' => [ 'category' ],
48  'fields' => [ 'title' => 'cat_title',
49  'namespace' => NS_CATEGORY,
50  'value' => 'cat_pages' ],
51  'conds' => [ 'cat_pages > 0' ],
52  ];
53  }
54 
55  function sortDescending() {
56  return true;
57  }
58 
65  function preprocessResults( $db, $res ) {
67  }
68 
74  function formatResult( $skin, $result ) {
75  $nt = Title::makeTitleSafe( NS_CATEGORY, $result->title );
76  if ( !$nt ) {
77  return Html::element(
78  'span',
79  [ 'class' => 'mw-invalidtitle' ],
81  $this->getContext(),
83  $result->title )
84  );
85  }
86 
87  $text = MediaWikiServices::getInstance()->getContentLanguage()
88  ->convert( htmlspecialchars( $nt->getText() ) );
89  $plink = $this->getLinkRenderer()->makeLink( $nt, new HtmlArmor( $text ) );
90  $nlinks = $this->msg( 'nmembers' )->numParams( $result->value )->escaped();
91 
92  return $this->getLanguage()->specialList( $plink, $nlinks );
93  }
94 
95  protected function getGroupName() {
96  return 'highuse';
97  }
98 }
SpecialPage\msg
msg( $key,... $params)
Wrapper around wfMessage that sets the current context.
Definition: SpecialPage.php:792
HtmlArmor
Marks HTML that shouldn't be escaped.
Definition: HtmlArmor.php:28
MediaWiki\MediaWikiServices
MediaWikiServices is the service locator for the application scope of MediaWiki.
Definition: MediaWikiServices.php:130
SpecialMostLinkedCategories\isSyndicated
isSyndicated()
Sometime we don't want to build rss / atom feeds.
Definition: SpecialMostLinkedCategories.php:41
SpecialMostLinkedCategories\preprocessResults
preprocessResults( $db, $res)
Fetch user page links and cache their existence.
Definition: SpecialMostLinkedCategories.php:65
SpecialPage\getLanguage
getLanguage()
Shortcut to get user's language.
Definition: SpecialPage.php:749
Linker\getInvalidTitleDescription
static getInvalidTitleDescription(IContextSource $context, $namespace, $title)
Get a message saying that an invalid title was encountered.
Definition: Linker.php:188
$res
$res
Definition: testCompression.php:54
QueryPage
This is a class for doing query pages; since they're almost all the same, we factor out some of the f...
Definition: QueryPage.php:36
QueryPage\executeLBFromResultWrapper
executeLBFromResultWrapper(IResultWrapper $res, $ns=null)
Creates a new LinkBatch object, adds all pages from the passed result wrapper (MUST include title and...
Definition: QueryPage.php:800
Wikimedia\Rdbms\IDatabase
Basic database interface for live and lazy-loaded relation database handles.
Definition: IDatabase.php:38
SpecialMostLinkedCategories\__construct
__construct( $name='Mostlinkedcategories')
Definition: SpecialMostLinkedCategories.php:37
Wikimedia\Rdbms\IResultWrapper
Result wrapper for grabbing data queried from an IDatabase object.
Definition: IResultWrapper.php:24
SpecialMostLinkedCategories\formatResult
formatResult( $skin, $result)
Definition: SpecialMostLinkedCategories.php:74
NS_CATEGORY
const NS_CATEGORY
Definition: Defines.php:74
SpecialPage\getContext
getContext()
Gets the context this SpecialPage is executed in.
Definition: SpecialPage.php:692
SpecialMostLinkedCategories\sortDescending
sortDescending()
Override to sort by increasing values.
Definition: SpecialMostLinkedCategories.php:55
Title\makeTitleSafe
static makeTitleSafe( $ns, $title, $fragment='', $interwiki='')
Create a new Title from a namespace index and a DB key.
Definition: Title.php:610
SpecialMostLinkedCategories\getQueryInfo
getQueryInfo()
Subclasses return an SQL query here, formatted as an array with the following keys: tables => Table(s...
Definition: SpecialMostLinkedCategories.php:45
SpecialPage\getLinkRenderer
getLinkRenderer()
Definition: SpecialPage.php:904
SpecialMostLinkedCategories
A querypage to show categories ordered in descending order by the pages in them.
Definition: SpecialMostLinkedCategories.php:36
SpecialMostLinkedCategories\getGroupName
getGroupName()
Under which header this special page is listed in Special:SpecialPages See messages 'specialpages-gro...
Definition: SpecialMostLinkedCategories.php:95