Merge "(bug 38556) Add header and footer messages to MediaWiki's info action"
[lhc/web/wiklou.git] / includes / specials / SpecialWantedpages.php
index 2b8a2bb..7673305 100644 (file)
  * @ingroup SpecialPage
  */
 class WantedPagesPage extends WantedQueryPage {
+       
        function __construct( $name = 'Wantedpages' ) {
                parent::__construct( $name );
+               $this->mIncludable = true;
        }
 
        function execute( $par ) {
                $inc = $this->including();
 
                if ( $inc ) {
-                       @list( $limit, $nlinks ) = explode( '/', $par, 2 );
-                       $this->limit = (int)$limit;
+                       $parts = explode( '/', $par, 2 );
+                       $this->limit = (int)$parts[0];
                        // @todo FIXME: nlinks is ignored
-                       $nlinks = $nlinks === 'nlinks';
+                       //$nlinks = isset( $parts[1] ) && $parts[1] === 'nlinks';
                        $this->offset = 0;
                } else {
-                       $nlinks = true;
+                       //$nlinks = true;
                }
-               $this->setListOutput( $inc );
+               $this->setListoutput( $inc );
                $this->shownavigation = !$inc;
                parent::execute( $par );
        }
@@ -51,29 +53,39 @@ class WantedPagesPage extends WantedQueryPage {
        function getQueryInfo() {
                global $wgWantedPagesThreshold;
                $count = $wgWantedPagesThreshold - 1;
-               $query = array (
-                       'tables' => array ( 'pagelinks', 'pg1' => 'page',
-                                       'pg2' => 'page' ),
-                       'fields' => array ( 'pl_namespace AS namespace',
-                                       'pl_title AS title',
-                                       'COUNT(*) AS value' ),
-                       'conds' => array ( 'pg1.page_namespace IS NULL',
-                                       "pl_namespace NOT IN ( '" . NS_USER .
-                                               "', '" . NS_USER_TALK . "' )",
-                                       "pg2.page_namespace != '" .
-                                               NS_MEDIAWIKI . "'" ),
-                       'options' => array ( 'HAVING' => "COUNT(*) > $count",
-                               'GROUP BY' => 'pl_namespace, pl_title' ),
-                       'join_conds' => array ( 'pg1' => array (
-                                       'LEFT JOIN', array (
-                                       'pg1.page_namespace = pl_namespace',
-                                       'pg1.page_title = pl_title' ) ),
-                               'pg2' => array ( 'LEFT JOIN',
-                                       'pg2.page_id = pl_from' ) )
+               $query = array(
+                       'tables' => array(
+                               'pagelinks',
+                               'pg1' => 'page',
+                               'pg2' => 'page'
+                       ),
+                       'fields' => array(
+                               'namespace' => 'pl_namespace',
+                               'title' => 'pl_title',
+                               'value' => 'COUNT(*)'
+                       ),
+                       'conds' => array(
+                               'pg1.page_namespace IS NULL',
+                               "pl_namespace NOT IN ( '" . NS_USER .
+                                       "', '" . NS_USER_TALK . "' )",
+                               "pg2.page_namespace != '" . NS_MEDIAWIKI . "'"
+                       ),
+                       'options' => array(
+                               'HAVING' => "COUNT(*) > $count",
+                               'GROUP BY' => array( 'pl_namespace', 'pl_title' )
+                       ),
+                       'join_conds' => array(
+                               'pg1' => array(
+                                       'LEFT JOIN', array(
+                                               'pg1.page_namespace = pl_namespace',
+                                               'pg1.page_title = pl_title'
+                                       )
+                               ),
+                               'pg2' => array( 'LEFT JOIN', 'pg2.page_id = pl_from' )
+                       )
                );
-               // Replacement WantedPages::getSQL
-               wfRunHooks( 'WantedPages::getQueryInfo',
-                               array( &$this, &$query ) );
+               // Replacement for the WantedPages::getSQL hook
+               wfRunHooks( 'WantedPages::getQueryInfo', array( &$this, &$query ) );
                return $query;
        }
 }