wfSetupSession();
}
- $loginForm = new LoginForm( $req );
+ $context = $this->createContext();
+ $context->setRequest( $req );
+ $loginForm = new LoginForm();
+ $loginForm->setContext( $context );
global $wgCookiePrefix, $wgUser, $wgPasswordAttemptThrottle;
var $mSkipCookieCheck, $mReturnToQuery, $mToken, $mStickHTTPS;
var $mType, $mReason, $mRealName;
var $mAbortLoginErrorMsg = 'login-abort-generic';
+ private $mLoaded = false;
/**
* @var ExternalUser
*
* @param $request WebRequest object
*/
- function load( $request ) {
+ function load() {
global $wgAuth, $wgHiddenPrefs, $wgEnableEmail, $wgRedirectOnLogin;
+ if ( $this->mLoaded ) {
+ return;
+ }
+ $this->mLoaded = true;
+
+ if ( $this->mOverrideRequest === null ) {
+ $request = $this->getRequest();
+ } else {
+ $request = $this->mOverrideRequest;
+ }
+
$this->mType = $request->getText( 'type' );
$this->mUsername = $request->getText( 'wpName' );
$this->mPassword = $request->getText( 'wpPassword' );
wfSetupSession();
}
- if ( $this->mOverrideRequest === null ) {
- $request = $this->getRequest();
- } else {
- $request = $this->mOverrideRequest;
- }
- $this->load( $request );
+ $this->load();
if ( $par == 'signup' ) { # Check for [[Special:Userlogin/signup]]
$this->mType = 'signup';
public function authenticateUserData() {
global $wgUser, $wgAuth;
+ $this->load();
+
if ( $this->mUsername == '' ) {
return self::NO_NAME;
}