Add $wgAuth->updateExternalDB calls back into core
authorRyan Lane <rlane@wikimedia.org>
Wed, 21 Nov 2012 01:39:19 +0000 (17:39 -0800)
committerRyan Lane <rlane@wikimedia.org>
Wed, 21 Nov 2012 01:39:19 +0000 (17:39 -0800)
Some time, long, long ago, in a MediaWiki much, much saner
the preferences form told wgAuth to update the external database.
That code disappeared at some point. This commit adds it back.

Change-Id: I91df44c8a8b38119c33d4a69b8c7e3c180e5c773

includes/Preferences.php
includes/specials/SpecialChangeEmail.php

index 65a0d02..a3c684b 100644 (file)
@@ -1373,7 +1373,7 @@ class Preferences {
         * @return bool|Status|string
         */
        static function tryFormSubmit( $formData, $form, $entryPoint = 'internal' ) {
-               global $wgHiddenPrefs;
+               global $wgHiddenPrefs, $wgAuth;
 
                $user = $form->getModifiedUser();
                $result = true;
@@ -1422,6 +1422,8 @@ class Preferences {
 
                $user->saveSettings();
 
+               $wgAuth->updateExternalDB( $user );
+
                return $result;
        }
 
index 0996de3..99d2ebf 100644 (file)
@@ -213,6 +213,8 @@ class SpecialChangeEmail extends UnlistedSpecialPage {
         * @return bool|string true or string on success, false on failure
         */
        protected function attemptChange( User $user, $pass, $newaddr ) {
+               global $wgAuth;
+
                if ( $newaddr != '' && !Sanitizer::validateEmail( $newaddr ) ) {
                        $this->error( 'invalidemailaddress' );
                        return false;
@@ -248,6 +250,8 @@ class SpecialChangeEmail extends UnlistedSpecialPage {
 
                $user->saveSettings();
 
+               $wgAuth->updateExternalDB( $user );
+
                return $status->value;
        }
 }