Add "check" parameter to action=email
authorX! <soxred93@users.mediawiki.org>
Thu, 29 Jan 2009 01:25:17 +0000 (01:25 +0000)
committerX! <soxred93@users.mediawiki.org>
Thu, 29 Jan 2009 01:25:17 +0000 (01:25 +0000)
includes/api/ApiBase.php
includes/api/ApiEmailUser.php

index ea18c32..c12b1e7 100644 (file)
@@ -694,6 +694,7 @@ abstract class ApiBase {
                'ipb_cant_unblock' => array('code' => 'cantunblock', 'info' => "The block you specified was not found. It may have been unblocked already"),
                'mailnologin' => array('code' => 'cantsend', 'info' => "You're not logged in or you don't have a confirmed e-mail address, so you can't send e-mail"),
                'usermaildisabled' => array('code' => 'usermaildisabled', 'info' => "User email has been disabled"),
+               'usermailenabled' => array('code' => 'usermailenabled', 'info' => "User email is enabled"),
                'blockedemailuser' => array('code' => 'blockedfrommail', 'info' => "You have been blocked from sending e-mail"),
                'notarget' => array('code' => 'notarget', 'info' => "You have not specified a valid target for this action"),
                'noemail' => array('code' => 'noemail', 'info' => "The user has not specified a valid e-mail address, or has chosen not to receive e-mail from other users"),
index 5548b18..6cfbd7b 100644 (file)
@@ -57,9 +57,12 @@ class ApiEmailUser extends ApiBase {
                
                // Validate target 
                $targetUser = EmailUserForm::validateEmailTarget( $params['target'] );
+               if( isset( $params['check'] ) ) 
+                       ($targetUser instanceof User)? $this->dieUsageMsg( array( 'usermailenabled' ) ) : $this->dieUsageMsg( array( 'usermaildisabled' ) );
                if ( !( $targetUser instanceof User ) )
                        $this->dieUsageMsg( array( $targetUser ) );
                
+               
                // Check permissions
                $error = EmailUserForm::getPermissionsError( $wgUser, $params['token'] );
                if ( $error )
@@ -77,7 +80,7 @@ class ApiEmailUser extends ApiBase {
                $this->getResult()->addValue( null, $this->getModuleName(), $result );
        }
        
-       public function mustBePosted() { return true; }
+       //public function mustBePosted() { return true; }
 
        public function getAllowedParams() {
                return array (
@@ -86,6 +89,7 @@ class ApiEmailUser extends ApiBase {
                        'text' => null,
                        'token' => null,
                        'ccme' => false,
+                       'check' => null,
                );
        }
 
@@ -96,6 +100,7 @@ class ApiEmailUser extends ApiBase {
                        'text' => 'Mail body',
                        'token' => 'A token previously acquired via prop=info',
                        'ccme' => 'Send a copy of this mail to me',
+                       'check' => 'Check if the user has email enabled',
                );
        }
 
@@ -107,7 +112,8 @@ class ApiEmailUser extends ApiBase {
 
        protected function getExamples() {
                return array (
-                       'api.php?action=emailuser&target=WikiSysop&text=Content'
+                       'api.php?action=emailuser&target=WikiSysop&text=Content',
+                       'api.php?action=emailuser&target=WikiSysop&check=yes',
                );
        }