Add the other existing $skin.css/.js to the message files too to be consistent
[lhc/web/wiklou.git] / includes / SpecialConfirmemail.php
index 98ec109..9075fb9 100644 (file)
@@ -4,19 +4,19 @@
  * Special page allows users to request email confirmation message, and handles
  * processing of the confirmation code when the link in the email is followed
  *
- * @addtogroup SpecialPage
+ * @ingroup SpecialPage
  * @author Brion Vibber
  * @author Rob Church <robchur@gmail.com>
  */
 class EmailConfirmation extends UnlistedSpecialPage {
-       
+
        /**
         * Constructor
         */
        public function __construct() {
                parent::__construct( 'Confirmemail' );
        }
-       
+
        /**
         * Main execution point
         *
@@ -43,7 +43,7 @@ class EmailConfirmation extends UnlistedSpecialPage {
                        $this->attemptConfirm( $code );
                }
        }
-       
+
        /**
         * Show a nice form for the user to request a confirmation mail
         */
@@ -65,15 +65,15 @@ class EmailConfirmation extends UnlistedSpecialPage {
                                $wgOut->addWikiMsg( 'confirmemail_pending' );
                        }
                        $wgOut->addWikiMsg( 'confirmemail_text' );
-                       $self = SpecialPage::getTitleFor( 'Confirmemail' );             
+                       $self = SpecialPage::getTitleFor( 'Confirmemail' );
                        $form  = wfOpenElement( 'form', array( 'method' => 'post', 'action' => $self->getLocalUrl() ) );
                        $form .= wfHidden( 'token', $wgUser->editToken() );
                        $form .= wfSubmitButton( wfMsgHtml( 'confirmemail_send' ) );
                        $form .= wfCloseElement( 'form' );
                        $wgOut->addHtml( $form );
-               }                               
+               }
        }
-       
+
        /**
         * Attempt to confirm the user's email address and show success or failure
         * as needed; if successful, take the user to log in
@@ -84,40 +84,38 @@ class EmailConfirmation extends UnlistedSpecialPage {
                global $wgUser, $wgOut;
                $user = User::newFromConfirmationCode( $code );
                if( is_object( $user ) ) {
-                       if( $user->confirmEmail() ) {
-                               $message = $wgUser->isLoggedIn() ? 'confirmemail_loggedin' : 'confirmemail_success';
-                               $wgOut->addWikiMsg( $message );
-                               if( !$wgUser->isLoggedIn() ) {
-                                       $title = SpecialPage::getTitleFor( 'Userlogin' );
-                                       $wgOut->returnToMain( true, $title->getPrefixedText() );
-                               }
-                       } else {
-                               $wgOut->addWikiMsg( 'confirmemail_error' );
+                       $user->confirmEmail();
+                       $user->saveSettings();
+                       $message = $wgUser->isLoggedIn() ? 'confirmemail_loggedin' : 'confirmemail_success';
+                       $wgOut->addWikiMsg( $message );
+                       if( !$wgUser->isLoggedIn() ) {
+                               $title = SpecialPage::getTitleFor( 'Userlogin' );
+                               $wgOut->returnToMain( true, $title );
                        }
                } else {
                        $wgOut->addWikiMsg( 'confirmemail_invalid' );
                }
        }
-       
+
 }
 
 /**
- * Special page allows users to cancel an email confirmation using the e-mail 
+ * Special page allows users to cancel an email confirmation using the e-mail
  * confirmation code
  *
- * @addtogroup SpecialPage
+ * @ingroup SpecialPage
  */
 class EmailInvalidation extends UnlistedSpecialPage {
-       
+
        public function __construct() {
                parent::__construct( 'Invalidateemail' );
        }
-       
+
        function execute( $code ) {
                $this->setHeaders();
                $this->attemptInvalidate( $code );
        }
-       
+
        /**
         * Attempt to invalidate the user's email address and show success or failure
         * as needed; if successful, link to main page
@@ -129,16 +127,13 @@ class EmailInvalidation extends UnlistedSpecialPage {
                $user = User::newFromConfirmationCode( $code );
                if( is_object( $user ) ) {
                        $user->invalidateEmail();
-                       if( $user->invalidateEmail() ) {
-                               $wgOut->addWikiMsg( 'confirmemail_invalidated' );
-                               if( !$wgUser->isLoggedIn() ) {
-                                       $wgOut->returnToMain();
-                               }
-                       } else {
-                               $wgOut->addWikiMsg( 'confirmemail_error' );
+                       $user->saveSettings();
+                       $wgOut->addWikiMsg( 'confirmemail_invalidated' );
+                       if( !$wgUser->isLoggedIn() ) {
+                               $wgOut->returnToMain();
                        }
                } else {
                        $wgOut->addWikiMsg( 'confirmemail_invalid' );
                }
-       }       
+       }
 }