Пример #1
0
 public static function actionSendVerifyCode()
 {
     $telephone = W2HttpRequest::getRequestTelephone('telephone');
     if ($telephone == null) {
         return Utility::getArrayForResults(RUNTIME_CODE_ERROR_PARAM, '请输入正确的手机号。');
     }
     $_smsVerifyModelFound = SmsVerifyHandler::loadModelFirstInList(array('telephone' => $telephone), 'id desc');
     if (isset($_smsVerifyModelFound) && time() - strtotime($_smsVerifyModelFound->getCreateTime()) < 60) {
         return Utility::getArrayForResults(RUNTIME_CODE_ERROR_PARAM, '手机号验证太频繁,请稍后。');
     }
     $tmpModel = new SmsVerifyModel();
     $_verifyCode = W2String::buildRandNumbers(4);
     switch (static::getAuthIfUserCanDoIt(Utility::getCurrentUserID(), 'add', $tmpModel)) {
         case 'admin':
             //有管理权限
         //有管理权限
         case 'self':
             //作者
         //作者
         case 'normal':
             //正常用户
         //正常用户
         case 'draft':
             //未激活
         //未激活
         case 'pending':
             //待审禁言
         //待审禁言
         case 'disabled':
             //封号
         //封号
         case 'visitor':
             $tmpModel->setUserID(Utility::getCurrentUserID());
             $tmpModel->setTelephone($telephone);
             $tmpModel->setVerifyCode($_verifyCode);
             break;
         default:
             return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NO_AUTH, '您没有权限执行该操作');
             break;
     }
     $result = static::save($tmpModel, $isAdd = true);
     if (is_array($result) && $result['errorCode'] == RUNTIME_CODE_OK) {
         $p_msg = '验证码:' . $_verifyCode . ' 退订回N【@bang】';
         $result['errorStr'] = '短信已发送成功成功,请注意查收。';
         // $result['extraInfo']['smsResult'] = W2SMS::sendMessage($telephone,$p_msg);
         $result['errorStr'] = $p_msg;
         //axing edit debug
     }
     return $result;
 }