ShortPages and LongPages are almsot identical; remove some duplication.
authorBrion Vibber <brion@users.mediawiki.org>
Sun, 3 Oct 2004 10:42:02 +0000 (10:42 +0000)
committerBrion Vibber <brion@users.mediawiki.org>
Sun, 3 Oct 2004 10:42:02 +0000 (10:42 +0000)
includes/SpecialLongpages.php
includes/SpecialShortpages.php

index 93e55e5..75f6e5c 100644 (file)
@@ -8,42 +8,22 @@
 /**
  *
  */
-require_once( "QueryPage.php" );
+require_once( 'SpecialShortpages.php' );
 
 /**
  *
  * @package MediaWiki
  * @subpackage SpecialPage
  */
-class LongPagesPage extends QueryPage {
+class LongPagesPage extends ShortPagesPage {
 
        function getName() {
                return "Longpages";
        }
 
-       function isExpensive() {
+       function sortDescending() {
                return true;
        }
-
-       function getSQL() {
-               $dbr =& wfGetDB( DB_SLAVE );
-               $cur = $dbr->tableName( 'cur' );
-
-               return
-                       "SELECT 'Longpages' as type,
-                                       cur_namespace as namespace,
-                               cur_title as title,
-                               LENGTH(cur_text) AS value
-                       FROM $cur
-                       WHERE cur_namespace=0 AND cur_is_redirect=0";
-       }
-
-       function formatResult( $skin, $result ) {
-               global $wgLang;
-               $nb = wfMsg( "nbytes", $wgLang->formatNum( $result->value ) );
-               $link = $skin->makeKnownLink( $result->title, "" );
-               return "{$link} ({$nb})";
-       }
 }
 
 /**
@@ -53,7 +33,7 @@ function wfSpecialLongpages()
 {
     list( $limit, $offset ) = wfCheckLimits();
 
-    $lpp = new LongPagesPage( );
+    $lpp = new LongPagesPage();
     
     $lpp->doQuery( $offset, $limit );
 }
index 3aeaa4f..01fe45f 100644 (file)
@@ -29,9 +29,10 @@ class ShortPagesPage extends QueryPage {
        function getSQL() {
                $dbr =& wfGetDB( DB_SLAVE );
                $cur = $dbr->tableName( 'cur' );
+               $name = $dbr->addQuotes( $this->getName() );
                
                return
-                       "SELECT 'Shortpages' as type,
+                       "SELECT $name as type,
                                        cur_namespace as namespace,
                                cur_title as title,
                                LENGTH(cur_text) AS value