From: IAlex Date: Sat, 10 Nov 2012 11:54:10 +0000 (+0000) Subject: Merge "Simplify cached check in Special:SpecialPages" X-Git-Tag: 1.31.0-rc.0~21680 X-Git-Url: http://git.cyclocoop.org/%22%20.%20generer_url_ecrire%28%22articles_versions%22%2C%22id_article=%24id_article%22%29%20.%20%22?a=commitdiff_plain;h=05c743fd9a7cf298c482d465ec287bd06d6dca14;hp=a8b48e66e8f4fd493413f05bc4f2112d36e65790;p=lhc%2Fweb%2Fwiklou.git Merge "Simplify cached check in Special:SpecialPages" --- diff --git a/includes/SpecialPage.php b/includes/SpecialPage.php index 816831fa3f..67aa2b33f4 100644 --- a/includes/SpecialPage.php +++ b/includes/SpecialPage.php @@ -513,6 +513,19 @@ class SpecialPage { return false; } + /** + * Is this page cached? + * Expensive pages are cached or disabled in miser mode. + * Used by QueryPage and subclasses, moved here so that + * Special:SpecialPages can safely call it for all special pages. + * + * @return Boolean + * @since 1.21 + */ + public function isCached() { + return false; + } + /** * Can be overridden by subclasses with more complicated permissions * schemes. diff --git a/includes/specials/SpecialSpecialpages.php b/includes/specials/SpecialSpecialpages.php index e973ddc89d..1e7c8bb565 100644 --- a/includes/specials/SpecialSpecialpages.php +++ b/includes/specials/SpecialSpecialpages.php @@ -66,7 +66,11 @@ class SpecialSpecialpages extends UnlistedSpecialPage { if( !isset( $groups[$group] ) ) { $groups[$group] = array(); } - $groups[$group][$page->getDescription()] = array( $page->getTitle(), $page->isRestricted(), $page->isExpensive() ); + $groups[$group][$page->getDescription()] = array( + $page->getTitle(), + $page->isRestricted(), + $page->isCached() + ); } } @@ -88,15 +92,14 @@ class SpecialSpecialpages extends UnlistedSpecialPage { } private function outputPageList( $groups ) { - global $wgMiserMode; $out = $this->getOutput(); $includesRestrictedPages = false; $includesCachedPages = false; foreach ( $groups as $group => $sortedPages ) { - $middle = ceil( count( $sortedPages )/2 ); $total = count( $sortedPages ); + $middle = ceil( $total / 2 ); $count = 0; $out->wrapWikiMsg( "

$1

\n", "specialpages-group-$group" ); @@ -107,10 +110,10 @@ class SpecialSpecialpages extends UnlistedSpecialPage { Html::openElement( 'ul' ) . "\n" ); foreach( $sortedPages as $desc => $specialpage ) { - list( $title, $restricted, $expensive) = $specialpage; + list( $title, $restricted, $cached ) = $specialpage; $pageClasses = array(); - if ( $expensive && $wgMiserMode ){ + if ( $cached ) { $includesCachedPages = true; $pageClasses[] = 'mw-specialpagecached'; }