getTransactionProfiler(); $this->setHeaders(); $this->checkReadOnly(); $this->checkPermissions(); $old = $trxProfiler->setSilenced( true ); $this->attemptInvalidate( $code ); $trxProfiler->setSilenced( $old ); } /** * Attempt to invalidate the user's email address and show success or failure * as needed; if successful, link to main page * * @param string $code Confirmation code */ private function attemptInvalidate( $code ) { $user = User::newFromConfirmationCode( $code, User::READ_LATEST ); if ( !is_object( $user ) ) { $this->getOutput()->addWikiMsg( 'confirmemail_invalid' ); return; } $user->invalidateEmail(); $user->saveSettings(); $this->getOutput()->addWikiMsg( 'confirmemail_invalidated' ); if ( !$this->getUser()->isLoggedIn() ) { $this->getOutput()->returnToMain(); } } }