6ac593a56b28d49838c40f5fc3c74114b8f62b1d
[lhc/web/wiklou.git] / includes / SpecialCategories.php
1 <?php
2 /**
3 *
4 * @package MediaWiki
5 * @subpackage SpecialPage
6 */
7
8 /**
9 *
10 */
11 require_once("QueryPage.php");
12
13 /**
14 *
15 * @package MediaWiki
16 * @subpackage SpecialPage
17 */
18 class CategoriesPage extends QueryPage {
19
20 function getName() {
21 return "Categories";
22 }
23
24 function isExpensive() {
25 return false;
26 }
27
28 function isSyndicated() { return false; }
29
30 function getPageHeader() {
31 return wfMsgWikiHtml( 'categoriespagetext' );
32 }
33
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;
46 }
47
48 function sortDescending() {
49 return false;
50 }
51
52 function formatResult( $skin, $result ) {
53 $title = Title::makeTitle( NS_CATEGORY, $result->title );
54 $plink = $skin->makeLinkObj( $title, $title->getText() );
55 $nlinks = wfMsg( 'members', $result->count );
56 return wfSpecialList($plink, $nlinks);
57 }
58 }
59
60 /**
61 *
62 */
63 function wfSpecialCategories() {
64 list( $limit, $offset ) = wfCheckLimits();
65
66 $cap = new CategoriesPage();
67
68 return $cap->doQuery( $offset, $limit );
69 }
70
71 ?>