00001 <?php
00012 class LonelyPagesPage extends PageQueryPage {
00013
00014 function getName() {
00015 return "Lonelypages";
00016 }
00017 function getPageHeader() {
00018 return wfMsgExt( 'lonelypagestext', array( 'parse' ) );
00019 }
00020
00021 function sortDescending() {
00022 return false;
00023 }
00024
00025 function isExpensive() {
00026 return true;
00027 }
00028 function isSyndicated() { return false; }
00029
00030 function getSQL() {
00031 $dbr = wfGetDB( DB_SLAVE );
00032 list( $page, $pagelinks, $templatelinks ) = $dbr->tableNamesN( 'page', 'pagelinks', 'templatelinks' );
00033
00034 return
00035 "SELECT 'Lonelypages' AS type,
00036 page_namespace AS namespace,
00037 page_title AS title,
00038 page_title AS value
00039 FROM $page
00040 LEFT JOIN $pagelinks
00041 ON page_namespace=pl_namespace AND page_title=pl_title
00042 LEFT JOIN $templatelinks
00043 ON page_namespace=tl_namespace AND page_title=tl_title
00044 WHERE pl_namespace IS NULL
00045 AND page_namespace=".NS_MAIN."
00046 AND page_is_redirect=0
00047 AND tl_namespace IS NULL";
00048
00049 }
00050 }
00051
00055 function wfSpecialLonelypages() {
00056 list( $limit, $offset ) = wfCheckLimits();
00057
00058 $lpp = new LonelyPagesPage();
00059
00060 return $lpp->doQuery( $offset, $limit );
00061 }