Collapse some nested if statements
[lhc/web/wiklou.git] / includes / specials / SpecialMostrevisions.php
index 9a4269f..0471caf 100644 (file)
@@ -1,5 +1,8 @@
 <?php
 /**
+ * Implements Special:Mostrevisions
+ *
+ * Copyright © 2005 Ævar Arnfjörð Bjarmason
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * with this program; if not, write to the Free Software Foundation, Inc.,
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  * http://www.gnu.org/copyleft/gpl.html
- */
-
-/**
- * A special page to show pages in the
  *
+ * @file
  * @ingroup SpecialPage
- *
  * @author Ævar Arnfjörð Bjarmason <avarab@gmail.com>
- * @copyright Copyright © 2005, Ævar Arnfjörð Bjarmason
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
  */
 
-/**
- * @ingroup SpecialPage
- */
-class MostrevisionsPage extends QueryPage {
-
-       function getName() { return 'Mostrevisions'; }
-       function isExpensive() { return true; }
-       function isSyndicated() { return false; }
-
-       function getSQL() {
-               $dbr = wfGetDB( DB_SLAVE );
-               list( $revision, $page ) = $dbr->tableNamesN( 'revision', 'page' );
-               return
-                       "
-                       SELECT
-                               'Mostrevisions' as type,
-                               page_namespace as namespace,
-                               page_title as title,
-                               COUNT(*) as value
-                       FROM $revision
-                       JOIN $page ON page_id = rev_page
-                       WHERE page_namespace = " . NS_MAIN . "
-                       GROUP BY page_namespace, page_title
-                       HAVING COUNT(*) > 1
-                       ";
+class MostrevisionsPage extends FewestrevisionsPage {
+       function __construct( $name = 'Mostrevisions' ) {
+               parent::__construct( $name );
        }
 
-       function formatResult( $skin, $result ) {
-               global $wgLang, $wgContLang;
-
-               $nt = Title::makeTitle( $result->namespace, $result->title );
-               $text = $wgContLang->convert( $nt->getPrefixedText() );
-
-               $plink = $skin->linkKnown( $nt, $text );
-
-               $nl = wfMsgExt( 'nrevisions', array( 'parsemag', 'escape'),
-                       $wgLang->formatNum( $result->value ) );
-               $nlink = $skin->linkKnown(
-                       $nt,
-                       $nl,
-                       array(),
-                       array( 'action' => 'history' )
-               );
-
-               return wfSpecialList($plink, $nlink);
+       function sortDescending() {
+               return true;
        }
-}
 
-/**
- * constructor
- */
-function wfSpecialMostrevisions() {
-       list( $limit, $offset ) = wfCheckLimits();
-
-       $wpp = new MostrevisionsPage();
-
-       $wpp->doQuery( $offset, $limit );
+       protected function getGroupName() {
+               return 'highuse';
+       }
 }