X-Git-Url: http://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2FSpecialSpecialpages.php;h=6a01cd082988ec9e6c4a9eb0d6dce412c8eb7559;hb=8167b89e080afa1dbddbb946d2ed2574fc7a2b15;hp=f14f4f3d8807e06b6ae4aeec865bc9bb2d00ba7d;hpb=97fdc1382ea35943222fab00d9c3ad85835f8ad3;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/SpecialSpecialpages.php b/includes/SpecialSpecialpages.php index f14f4f3d88..6a01cd0829 100644 --- a/includes/SpecialSpecialpages.php +++ b/includes/SpecialSpecialpages.php @@ -9,29 +9,16 @@ * */ function wfSpecialSpecialpages() { - global $wgLang, $wgOut, $wgUser, $wgAvailableRights; - + global $wgOut, $wgUser; + $wgOut->setRobotpolicy( 'index,nofollow' ); - $sk = $wgUser->getSkin(); - - # Get listable pages, in a 2-d array with the first dimension being user right - $pages = SpecialPage::getPages(); + $sk = $wgUser->getSkin(); /** Pages available to all */ - wfSpecialSpecialpages_gen($pages[''],'spheading',$sk); + wfSpecialSpecialpages_gen( SpecialPage::getRegularPages(), 'spheading', $sk ); /** Restricted special pages */ - $rpages = array(); - foreach($wgAvailableRights as $right) { - /** only show pages a user can access */ - if( $wgUser->isAllowed($right) ) { - /** some rights might not have any special page associated */ - if(isset($pages[$right])) { - $rpages = array_merge( $rpages, $pages[$right] ); - } - } - } - wfSpecialSpecialpages_gen( $rpages, 'restrictedpheading', $sk ); + wfSpecialSpecialpages_gen( SpecialPage::getRestrictedPages(), 'restrictedpheading', $sk ); } /** @@ -41,7 +28,12 @@ function wfSpecialSpecialpages() { * @param $sk skin object ??? */ function wfSpecialSpecialpages_gen($pages,$heading,$sk) { - global $wgLang, $wgOut; + global $wgOut, $wgSortSpecialPages; + + if( count( $pages ) == 0 ) { + # Yeah, that was pointless. Thanks for coming. + return; + } /** Put them into a sortable array */ $sortedPages = array(); @@ -50,12 +42,14 @@ function wfSpecialSpecialpages_gen($pages,$heading,$sk) { $sortedPages[$page->getDescription()] = $page->getTitle(); } } - + /** Sort */ - ksort( $sortedPages ); + if ( $wgSortSpecialPages ) { + ksort( $sortedPages ); + } /** Now output the HTML */ - $wgOut->addHTML( '

' . wfMsg( $heading ) . "

\n