X-Git-Url: https://git.cyclocoop.org/?a=blobdiff_plain;f=includes%2Fspecials%2FSpecialMostcategories.php;h=015701d877839da92c70e66ac0eea7f10ccd0df5;hb=8ad38dfdc04c222fb41679414721d76068546d7d;hp=c70bbdbad0d42c4fcb4b12f9ca458ed9d7daf978;hpb=4cabe55d0f8aa5f4181c2591c8e0f3e139268128;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/specials/SpecialMostcategories.php b/includes/specials/SpecialMostcategories.php index c70bbdbad0..015701d877 100644 --- a/includes/specials/SpecialMostcategories.php +++ b/includes/specials/SpecialMostcategories.php @@ -34,7 +34,7 @@ class MostcategoriesPage extends QueryPage { parent::__construct( $name ); } - function isExpensive() { + public function isExpensive() { return true; } @@ -42,26 +42,26 @@ class MostcategoriesPage extends QueryPage { return false; } - function getQueryInfo() { - return array( - 'tables' => array( 'categorylinks', 'page' ), - 'fields' => array( + public function getQueryInfo() { + return [ + 'tables' => [ 'categorylinks', 'page' ], + 'fields' => [ 'namespace' => 'page_namespace', 'title' => 'page_title', 'value' => 'COUNT(*)' - ), - 'conds' => array( 'page_namespace' => MWNamespace::getContentNamespaces() ), - 'options' => array( + ], + 'conds' => [ 'page_namespace' => MWNamespace::getContentNamespaces() ], + 'options' => [ 'HAVING' => 'COUNT(*) > 1', - 'GROUP BY' => array( 'page_namespace', 'page_title' ) - ), - 'join_conds' => array( - 'page' => array( + 'GROUP BY' => [ 'page_namespace', 'page_title' ] + ], + 'join_conds' => [ + 'page' => [ 'LEFT JOIN', 'page_id = cl_from' - ) - ) - ); + ] + ] + ]; } /** @@ -69,19 +69,7 @@ class MostcategoriesPage extends QueryPage { * @param ResultWrapper $res */ function preprocessResults( $db, $res ) { - # There's no point doing a batch check if we aren't caching results; - # the page must exist for it to have been pulled out of the table - if ( !$this->isCached() || !$res->numRows() ) { - return; - } - - $batch = new LinkBatch(); - foreach ( $res as $row ) { - $batch->add( $row->namespace, $row->title ); - } - $batch->execute(); - - $res->seek( 0 ); + $this->executeLBFromResultWrapper( $res ); } /** @@ -94,7 +82,7 @@ class MostcategoriesPage extends QueryPage { if ( !$title ) { return Html::element( 'span', - array( 'class' => 'mw-invalidtitle' ), + [ 'class' => 'mw-invalidtitle' ], Linker::getInvalidTitleDescription( $this->getContext(), $result->namespace,