<?php
global $wgSpecialPages;
$wgSpecialPages = array(
- "Userlogin" => new UnlistedSpecialPage( "Userlogin" ),
- "Userlogout" => new UnlistedSpecialPage( "Userlogout" ),
- "Preferences" => new SpecialPage( "Preferences" ),
- "Watchlist" => new SpecialPage( "Watchlist" ),
- "Recentchanges" => new SpecialPage( "Recentchanges" ),
- "Upload" => new SpecialPage( "Upload" ),
- "Imagelist" => new SpecialPage( "Imagelist" ),
- "Listusers" => new SpecialPage( "Listusers" ),
- "Listadmins" => new SpecialPage( "Listadmins" ),
- "Statistics" => new SpecialPage( "Statistics" ),
- "Randompage" => new SpecialPage( "Randompage" ),
- "Lonelypages" => new SpecialPage( "Lonelypages" ),
- "Unusedimages" => new SpecialPage( "Unusedimages" )
+ "Userlogin" => new UnlistedSpecialPage( "Userlogin" ),
+ "Userlogout" => new UnlistedSpecialPage( "Userlogout" ),
+ "Preferences" => new SpecialPage( "Preferences" ),
+ "Watchlist" => new SpecialPage( "Watchlist" ),
+ "Recentchanges" => new SpecialPage( "Recentchanges" ),
+ "Upload" => new SpecialPage( "Upload" ),
+ "Imagelist" => new SpecialPage( "Imagelist" ),
+ "Listusers" => new SpecialPage( "Listusers" ),
+ "Listadmins" => new SpecialPage( "Listadmins" ),
+ "Statistics" => new SpecialPage( "Statistics" ),
+ "Randompage" => new SpecialPage( "Randompage" ),
+ "Lonelypages" => new SpecialPage( "Lonelypages" ),
+ "Uncategorizedpages"=> new SpecialPage( "Uncategorizedpages" ),
+ "Unusedimages" => new SpecialPage( "Unusedimages" )
);
global $wgDisableCounters;
if( !$wgDisableCounters )
--- /dev/null
+<?php
+
+require_once( "QueryPage.php" );
+
+class UncategorizedPagesPage extends PageQueryPage {
+
+ function getName() {
+ return "Uncategorizedpages";
+ }
+
+ function sortDescending() {
+ return false;
+ }
+
+ function isExpensive() {
+ return true;
+ }
+
+ function getSQL() {
+ $dbr =& wfGetDB( DB_SLAVE );
+ extract( $dbr->tableNames( 'cur', 'categorylinks' ) );
+
+ return "SELECT 'Uncategorizedpages' as type, cur_namespace AS namespace, cur_title AS title, cur_title AS value " .
+ "FROM $cur LEFT JOIN $categorylinks ON cur_id=cl_to ".
+ "WHERE cl_to IS NULL AND cur_namespace=0 AND cur_is_redirect=0";
+ }
+}
+
+function wfSpecialUncategorizedpages() {
+ list( $limit, $offset ) = wfCheckLimits();
+
+ $lpp = new UncategorizedPagesPage();
+
+ return $lpp->doQuery( $offset, $limit );
+}
+
+?>
'geo' => 'GEO coordinates',
'validate' => 'Validate page',
'lonelypages' => 'Orphaned pages',
+'uncategorizedpages' => 'Uncategorized pages',
'unusedimages' => 'Unused images',
'popularpages' => 'Popular pages',
'nviews' => '$1 views',