5 * @subpackage SpecialPage
11 * @subpackage SpecialPage
13 class DeadendPagesPage
extends PageQueryPage
{
16 return "Deadendpages";
19 function getPageHeader() {
20 return '<p>' . wfMsg('deadendpagestext') . '</p>';
24 * LEFT JOIN is expensive
28 function isExpensive( ) {
32 function isSyndicated() { return false; }
37 function sortDescending() {
42 * @return string an sqlquery
45 $dbr =& wfGetDB( DB_SLAVE
);
46 list( $page, $pagelinks ) = $dbr->tableNamesN( 'page', 'pagelinks' );
47 return "SELECT 'Deadendpages' as type, page_namespace AS namespace, page_title as title, page_title AS value " .
48 "FROM $page LEFT JOIN $pagelinks ON page_id = pl_from " .
49 "WHERE pl_from IS NULL " .
50 "AND page_namespace = 0 " .
51 "AND page_is_redirect = 0";
58 function wfSpecialDeadendpages() {
60 list( $limit, $offset ) = wfCheckLimits();
62 $depp = new DeadendPagesPage();
64 return $depp->doQuery( $offset, $limit );