X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fspecialpage%2FSpecialPageFactory.php;h=58212dd9d549b41c4cef830f7da8486bdc139db9;hb=e2b03d5d30a8a6c62569a336622b865f47e148d0;hp=013ceb24e5afca2bd015f51ef6f52ab3f0f90672;hpb=6d4f11c2e3de50b41bd6df0bce125f0800c6d991;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/specialpage/SpecialPageFactory.php b/includes/specialpage/SpecialPageFactory.php index 013ceb24e5..58212dd9d5 100644 --- a/includes/specialpage/SpecialPageFactory.php +++ b/includes/specialpage/SpecialPageFactory.php @@ -352,17 +352,11 @@ class SpecialPageFactory { $caseFoldedAlias = $this->contLang->caseFold( $bits[0] ); $caseFoldedAlias = str_replace( ' ', '_', $caseFoldedAlias ); $aliases = $this->getAliasList(); - if ( isset( $aliases[$caseFoldedAlias] ) ) { - $name = $aliases[$caseFoldedAlias]; - } else { + if ( !isset( $aliases[$caseFoldedAlias] ) ) { return [ null, null ]; } - - if ( !isset( $bits[1] ) ) { // T4087 - $par = null; - } else { - $par = $bits[1]; - } + $name = $aliases[$caseFoldedAlias]; + $par = $bits[1] ?? null; // T4087 return [ $name, $par ]; } @@ -504,11 +498,7 @@ class SpecialPageFactory { // @todo FIXME: Redirects broken due to this call $bits = explode( '/', $title->getDBkey(), 2 ); $name = $bits[0]; - if ( !isset( $bits[1] ) ) { // T4087 - $par = null; - } else { - $par = $bits[1]; - } + $par = $bits[1] ?? null; // T4087 $page = $this->getPage( $name ); if ( !$page ) { @@ -606,6 +596,9 @@ class SpecialPageFactory { 'user' => $main->getUser(), 'language' => $main->getLanguage(), ]; + if ( $main->canUseWikiPage() ) { + $ctx['wikipage'] = $main->getWikiPage(); + } // Override $wgTitle = $title; @@ -633,6 +626,9 @@ class SpecialPageFactory { $main->setRequest( $ctx['request'] ); $main->setUser( $ctx['user'] ); $main->setLanguage( $ctx['language'] ); + if ( isset( $ctx['wikipage'] ) ) { + $main->setWikiPage( $ctx['wikipage'] ); + } return $ret; }