Split PHP classes from SpecialConfirmemail.php into separate files
authorananay <i@ananayarora.com>
Mon, 4 Jan 2016 18:00:50 +0000 (23:30 +0530)
committerReedy <reedy@wikimedia.org>
Mon, 4 Jan 2016 20:17:15 +0000 (20:17 +0000)
Bug: T122636
Change-Id: Icfdb306e0df8e3571571413d4a340235cd70f1e3

autoload.php
includes/specials/SpecialConfirmemail.php
includes/specials/SpecialEmailInvalidate.php [new file with mode: 0644]

index 46da116..dbeeceb 100644 (file)
@@ -377,7 +377,7 @@ $wgAutoloadLocalClasses = array(
        'EditWatchlistCheckboxSeriesField' => __DIR__ . '/includes/specials/SpecialEditWatchlist.php',
        'EditWatchlistNormalHTMLForm' => __DIR__ . '/includes/specials/SpecialEditWatchlist.php',
        'EmailConfirmation' => __DIR__ . '/includes/specials/SpecialConfirmemail.php',
-       'EmailInvalidation' => __DIR__ . '/includes/specials/SpecialConfirmemail.php',
+       'EmailInvalidation' => __DIR__ . '/includes/specials/SpecialEmailInvalidate.php',
        'EmailNotification' => __DIR__ . '/includes/mail/EmailNotification.php',
        'EmaillingJob' => __DIR__ . '/includes/jobqueue/jobs/EmaillingJob.php',
        'EmptyBagOStuff' => __DIR__ . '/includes/libs/objectcache/EmptyBagOStuff.php',
index ea26ada..37d3636 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * Implements Special:Confirmemail and Special:Invalidateemail
+ * Implements Special:Confirmemail
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -162,49 +162,3 @@ class EmailConfirmation extends UnlistedSpecialPage {
                }
        }
 }
-
-/**
- * Special page allows users to cancel an email confirmation using the e-mail
- * confirmation code
- *
- * @ingroup SpecialPage
- */
-class EmailInvalidation extends UnlistedSpecialPage {
-       public function __construct() {
-               parent::__construct( 'Invalidateemail', 'editmyprivateinfo' );
-       }
-
-       function execute( $code ) {
-               // Ignore things like master queries/connections on GET requests.
-               // It's very convenient to just allow formless link usage.
-               Profiler::instance()->getTransactionProfiler()->resetExpectations();
-
-               $this->setHeaders();
-               $this->checkReadOnly();
-               $this->checkPermissions();
-               $this->attemptInvalidate( $code );
-       }
-
-       /**
-        * 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
-        */
-       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();
-               }
-       }
-}
diff --git a/includes/specials/SpecialEmailInvalidate.php b/includes/specials/SpecialEmailInvalidate.php
new file mode 100644 (file)
index 0000000..30f9d2e
--- /dev/null
@@ -0,0 +1,68 @@
+<?php
+/**
+ * Implements Special:EmailInvalidation
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * http://www.gnu.org/copyleft/gpl.html
+ *
+ * @file
+ * @ingroup SpecialPage
+ */
+
+/**
+ * Special page allows users to cancel an email confirmation using the e-mail
+ * confirmation code
+ *
+ * @ingroup SpecialPage
+ */
+class EmailInvalidation extends UnlistedSpecialPage {
+       public function __construct() {
+               parent::__construct( 'Invalidateemail', 'editmyprivateinfo' );
+       }
+
+       function execute( $code ) {
+               // Ignore things like master queries/connections on GET requests.
+               // It's very convenient to just allow formless link usage.
+               Profiler::instance()->getTransactionProfiler()->resetExpectations();
+
+               $this->setHeaders();
+               $this->checkReadOnly();
+               $this->checkPermissions();
+               $this->attemptInvalidate( $code );
+       }
+
+       /**
+        * 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
+        */
+       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();
+               }
+       }
+}