X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fspecialpage%2FLoginSignupSpecialPage.php;h=86365c58b55c87bcec2019b58249270c5252129f;hb=9feb18149101fb505b8d55beb38c2baa9f848384;hp=48dd405a13baa320bfe86e1ef78f669996c2db50;hpb=0770f85a0a293e6c7af6f1d3d3a1dbd2d13c1e09;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/specialpage/LoginSignupSpecialPage.php b/includes/specialpage/LoginSignupSpecialPage.php index 48dd405a13..86365c58b5 100644 --- a/includes/specialpage/LoginSignupSpecialPage.php +++ b/includes/specialpage/LoginSignupSpecialPage.php @@ -54,7 +54,8 @@ abstract class LoginSignupSpecialPage extends AuthManagerSpecialPage { protected $securityLevel; /** @var bool True if the user if creating an account for someone else. Flag used for internal - * communication, only set at the very end. */ + * communication, only set at the very end. + */ protected $proxyAccountCreation; /** @var User FIXME another flag for passing data. */ protected $targetUser; @@ -94,9 +95,8 @@ abstract class LoginSignupSpecialPage extends AuthManagerSpecialPage { /** * Load basic request parameters for this Special page. - * @param string $subPage */ - private function loadRequestParameters( $subPage ) { + private function loadRequestParameters() { if ( $this->mLoadedRequest ) { return; } @@ -104,7 +104,6 @@ abstract class LoginSignupSpecialPage extends AuthManagerSpecialPage { $request = $this->getRequest(); $this->mPosted = $request->wasPosted(); - $this->mIsReturn = $subPage === 'return'; $this->mAction = $request->getVal( 'action' ); $this->mFromHTTP = $request->getBool( 'fromhttp', false ) || $request->getBool( 'wpFromhttp', false ); @@ -123,7 +122,7 @@ abstract class LoginSignupSpecialPage extends AuthManagerSpecialPage { protected function load( $subPage ) { global $wgSecureLogin; - $this->loadRequestParameters( $subPage ); + $this->loadRequestParameters(); if ( $this->mLoaded ) { return; } @@ -202,12 +201,13 @@ abstract class LoginSignupSpecialPage extends AuthManagerSpecialPage { protected function beforeExecute( $subPage ) { // finish initializing the class before processing the request - T135924 - $this->loadRequestParameters( $subPage ); + $this->loadRequestParameters(); return parent::beforeExecute( $subPage ); } /** * @param string|null $subPage + * @suppress PhanTypeObjectUnsetDeclaredProperty */ public function execute( $subPage ) { if ( $this->mPosted ) { @@ -441,7 +441,9 @@ abstract class LoginSignupSpecialPage extends AuthManagerSpecialPage { } if ( $extraMessages ) { $extraMessages = Status::wrap( $extraMessages ); - $out->addWikiTextAsInterface( $extraMessages->getWikiText() ); + $out->addWikiTextAsInterface( + $extraMessages->getWikiText( false, false, $this->getLanguage() ) + ); } $out->addHTML( $injected_html ); @@ -491,10 +493,7 @@ abstract class LoginSignupSpecialPage extends AuthManagerSpecialPage { $wgUser = $user; $context->setUser( $user ); - $code = $this->getRequest()->getVal( 'uselang', $user->getOption( 'language' ) ); - $userLang = Language::factory( $code ); - $wgLang = $userLang; - $context->setLanguage( $userLang ); + $wgLang = $context->getLanguage(); } /** @@ -761,6 +760,7 @@ abstract class LoginSignupSpecialPage extends AuthManagerSpecialPage { $isLoggedIn = $this->getUser()->isLoggedIn(); $continuePart = $this->isContinued() ? 'continue-' : ''; $anotherPart = $isLoggedIn ? 'another-' : ''; + // @phan-suppress-next-line PhanUndeclaredMethod $expiration = $this->getRequest()->getSession()->getProvider()->getRememberUserDuration(); $expirationDays = ceil( $expiration / ( 3600 * 24 ) ); $secureLoginLink = ''; @@ -977,7 +977,7 @@ abstract class LoginSignupSpecialPage extends AuthManagerSpecialPage { } } if ( !$this->isSignup() && $this->showExtraInformation() ) { - $passwordReset = new PasswordReset( $this->getConfig(), AuthManager::singleton() ); + $passwordReset = MediaWikiServices::getInstance()->getPasswordReset(); if ( $passwordReset->isAllowed( $this->getUser() )->isGood() ) { $fieldDefinitions['passwordReset'] = [ 'type' => 'info', @@ -1074,7 +1074,10 @@ abstract class LoginSignupSpecialPage extends AuthManagerSpecialPage { private function showCreateAccountLink() { if ( $this->isSignup() ) { return true; - } elseif ( $this->getUser()->isAllowed( 'createaccount' ) ) { + } elseif ( MediaWikiServices::getInstance() + ->getPermissionManager() + ->userHasRight( $this->getUser(), 'createaccount' ) + ) { return true; } else { return false;