http://www.mediawiki.org/wiki/Special:Code/MediaWiki/100140

Revision: 100140
Author:   ialex
Date:     2011-10-18 18:07:56 +0000 (Tue, 18 Oct 2011)
Log Message:
-----------
Fix for r100114: make API and tests work again

Modified Paths:
--------------
    trunk/phase3/includes/api/ApiLogin.php
    trunk/phase3/includes/specials/SpecialUserlogin.php

Modified: trunk/phase3/includes/api/ApiLogin.php
===================================================================
--- trunk/phase3/includes/api/ApiLogin.php      2011-10-18 17:57:33 UTC (rev 
100139)
+++ trunk/phase3/includes/api/ApiLogin.php      2011-10-18 18:07:56 UTC (rev 
100140)
@@ -68,7 +68,10 @@
                        wfSetupSession();
                }
 
-               $loginForm = new LoginForm( $req );
+               $context = $this->createContext();
+               $context->setRequest( $req );
+               $loginForm = new LoginForm();
+               $loginForm->setContext( $context );
 
                global $wgCookiePrefix, $wgUser, $wgPasswordAttemptThrottle;
 

Modified: trunk/phase3/includes/specials/SpecialUserlogin.php
===================================================================
--- trunk/phase3/includes/specials/SpecialUserlogin.php 2011-10-18 17:57:33 UTC 
(rev 100139)
+++ trunk/phase3/includes/specials/SpecialUserlogin.php 2011-10-18 18:07:56 UTC 
(rev 100140)
@@ -49,6 +49,7 @@
        var $mSkipCookieCheck, $mReturnToQuery, $mToken, $mStickHTTPS;
        var $mType, $mReason, $mRealName;
        var $mAbortLoginErrorMsg = 'login-abort-generic';
+       private $mLoaded = false;
 
        /**
         * @var ExternalUser
@@ -74,9 +75,20 @@
         *
         * @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' );
@@ -132,12 +144,7 @@
                        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';
@@ -459,6 +466,8 @@
        public function authenticateUserData() {
                global $wgUser, $wgAuth;
 
+               $this->load();
+
                if ( $this->mUsername == '' ) {
                        return self::NO_NAME;
                }


_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to