]> scripts.mit.edu Git - autoinstallsdev/mediawiki.git/blob - includes/specials/SpecialDeadendpages.php
MediaWiki 1.14.0
[autoinstallsdev/mediawiki.git] / includes / specials / SpecialDeadendpages.php
1 <?php
2 /**
3  * @file
4  * @ingroup SpecialPage
5  */
6
7 /**
8  * @ingroup SpecialPage
9  */
10 class DeadendPagesPage extends PageQueryPage {
11
12         function getName( ) {
13                 return "Deadendpages";
14         }
15
16         function getPageHeader() {
17                 return wfMsgExt( 'deadendpagestext', array( 'parse' ) );
18         }
19
20         /**
21          * LEFT JOIN is expensive
22          *
23          * @return true
24          */
25         function isExpensive( ) {
26                 return 1;
27         }
28
29         function isSyndicated() { return false; }
30
31         /**
32          * @return false
33          */
34         function sortDescending() {
35                 return false;
36         }
37
38         /**
39          * @return string an sqlquery
40          */
41         function getSQL() {
42                 $dbr = wfGetDB( DB_SLAVE );
43                 list( $page, $pagelinks ) = $dbr->tableNamesN( 'page', 'pagelinks' );
44                 return "SELECT 'Deadendpages' as type, page_namespace AS namespace, page_title as title, page_title AS value " .
45         "FROM $page LEFT JOIN $pagelinks ON page_id = pl_from " .
46         "WHERE pl_from IS NULL " .
47         "AND page_namespace = 0 " .
48         "AND page_is_redirect = 0";
49         }
50 }
51
52 /**
53  * Constructor
54  */
55 function wfSpecialDeadendpages() {
56
57         list( $limit, $offset ) = wfCheckLimits();
58
59         $depp = new DeadendPagesPage();
60
61         return $depp->doQuery( $offset, $limit );
62 }