(bug 6040) Run pre-save transform before calculating the diff. when doing a "show...
[mediawiki.git] / includes / SpecialCategories.php
blob47df89ae20f9859deb269fa077852a9d04317d46
1 <?php
2 /**
4 * @package MediaWiki
5 * @subpackage SpecialPage
6 */
8 /**
11 require_once("QueryPage.php");
13 /**
15 * @package MediaWiki
16 * @subpackage SpecialPage
18 class CategoriesPage extends QueryPage {
20 function getName() {
21 return "Categories";
24 function isExpensive() {
25 return false;
28 function isSyndicated() { return false; }
30 function getPageHeader() {
31 return wfMsgWikiHtml( 'categoriespagetext' );
34 function getSQL() {
35 $NScat = NS_CATEGORY;
36 $dbr =& wfGetDB( DB_SLAVE );
37 $categorylinks = $dbr->tableName( 'categorylinks' );
38 $s= "SELECT 'Categories' as type,
39 {$NScat} as namespace,
40 cl_to as title,
41 1 as value,
42 COUNT(*) as count
43 FROM $categorylinks
44 GROUP BY cl_to";
45 return $s;
48 function sortDescending() {
49 return false;
52 function formatResult( $skin, $result ) {
53 global $wgLang;
54 $title = Title::makeTitle( NS_CATEGORY, $result->title );
55 $plink = $skin->makeLinkObj( $title, $title->getText() );
56 $nlinks = wfMsgExt( 'nmembers', array( 'parsemag', 'escape'),
57 $wgLang->formatNum( $result->count ) );
58 return wfSpecialList($plink, $nlinks);
62 /**
65 function wfSpecialCategories() {
66 list( $limit, $offset ) = wfCheckLimits();
68 $cap = new CategoriesPage();
70 return $cap->doQuery( $offset, $limit );