X-Git-Url: https://git.heureux-cyclage.org/?p=lhc%2Fweb%2Fwiklou.git;a=blobdiff_plain;f=includes%2Fspecialpage%2FSpecialPageFactory.php;h=daabdedf2b5ea74e78bcce634d1f8eac72b5c28f;hp=b69b28afb43a8dc8e4c89ccb15a4f898aac83fed;hb=1dd2e07276e1deaf431ddb01c92111038f9e2cd6;hpb=3eebaaffcf25c3779725309570de924ad5bea766 diff --git a/includes/specialpage/SpecialPageFactory.php b/includes/specialpage/SpecialPageFactory.php index b69b28afb4..daabdedf2b 100644 --- a/includes/specialpage/SpecialPageFactory.php +++ b/includes/specialpage/SpecialPageFactory.php @@ -84,8 +84,8 @@ class SpecialPageFactory { // Authentication 'Userlogin' => 'SpecialUserLogin', - 'Userlogout' => 'SpecialUserlogoutPreAuthManager', - 'CreateAccount' => 'SpecialCreateAccountPreAuthManager', + 'Userlogout' => 'SpecialUserLogout', + 'CreateAccount' => 'SpecialCreateAccount', 'LinkAccounts' => 'SpecialLinkAccounts', 'UnlinkAccounts' => 'SpecialUnlinkAccounts', 'ChangeCredentials' => 'SpecialChangeCredentials', @@ -96,9 +96,9 @@ class SpecialPageFactory { 'Block' => 'SpecialBlock', 'Unblock' => 'SpecialUnblock', 'BlockList' => 'SpecialBlockList', - 'ChangePassword' => 'SpecialChangePasswordPreAuthManager', + 'ChangePassword' => 'SpecialChangePassword', 'BotPasswords' => 'SpecialBotPasswords', - 'PasswordReset' => 'SpecialPasswordResetPreAuthManager', + 'PasswordReset' => 'SpecialPasswordReset', 'DeletedContributions' => 'DeletedContributionsPage', 'Preferences' => 'SpecialPreferences', 'ResetTokens' => 'SpecialResetTokens', @@ -188,7 +188,6 @@ class SpecialPageFactory { private static $list; private static $aliases; - private static $pageObjectCache = []; /** * Reset the internal list of special pages. Useful when changing $wgSpecialPages after @@ -197,7 +196,6 @@ class SpecialPageFactory { public static function resetList() { self::$list = null; self::$aliases = null; - self::$pageObjectCache = []; } /** @@ -231,7 +229,6 @@ class SpecialPageFactory { global $wgDisableInternalSearch, $wgEmailAuthentication; global $wgEnableEmail, $wgEnableJavaScriptTest; global $wgPageLanguageUseDB, $wgContentHandlerUseDB; - global $wgDisableAuthManager; if ( !is_array( self::$list ) ) { @@ -247,7 +244,7 @@ class SpecialPageFactory { } if ( $wgEnableEmail ) { - self::$list['ChangeEmail'] = 'SpecialChangeEmailPreAuthManager'; + self::$list['ChangeEmail'] = 'SpecialChangeEmail'; } if ( $wgEnableJavaScriptTest ) { @@ -261,20 +258,6 @@ class SpecialPageFactory { self::$list['ChangeContentModel'] = 'SpecialChangeContentModel'; } - // horrible hack to allow selection between old and new classes via a feature flag - T110756 - // will be removed once AuthManager is stable - if ( !$wgDisableAuthManager ) { - self::$list = array_map( function ( $class ) { - return preg_replace( '/PreAuthManager$/', '', $class ); - }, self::$list ); - self::$list['Userlogout'] = 'SpecialUserLogout'; // case matters - } else { - self::$list['Userlogin'] = 'LoginForm'; - self::$list = array_diff_key( self::$list, array_fill_keys( [ - 'LinkAccounts', 'UnlinkAccounts', 'ChangeCredentials', 'RemoveCredentials', - ], true ) ); - } - // Add extension special pages self::$list = array_merge( self::$list, $wgSpecialPages ); @@ -394,10 +377,6 @@ class SpecialPageFactory { public static function getPage( $name ) { list( $realName, /*...*/ ) = self::resolveAlias( $name ); - if ( isset( self::$pageObjectCache[$realName] ) ) { - return self::$pageObjectCache[$realName]; - } - $specialPageList = self::getPageList(); if ( isset( $specialPageList[$realName] ) ) { @@ -425,7 +404,6 @@ class SpecialPageFactory { $page = null; } - self::$pageObjectCache[$realName] = $page; if ( $page instanceof SpecialPage ) { return $page; } else { @@ -714,6 +692,8 @@ class SpecialPageFactory { } if ( $subpage !== false && !is_null( $subpage ) ) { + // Make sure it's in dbkey form + $subpage = str_replace( ' ', '_', $subpage ); $name = "$name/$subpage"; }