Пример #1
0
 /**
  * 验证邮件展示重置密码页面
  */
 public function resetpwdAction()
 {
     list($userinfo, $value, $type, $statu) = $this->checkState();
     $code = $this->getInput('code', 'get');
     $findPasswordBp = new PwFindPassword($userinfo['username']);
     if ($type == PwFindPassword::WAY_EMAIL) {
         if ($findPasswordBp->isOverByMail()) {
             $this->showError('USER:findpwd.over.limit.email');
         }
         if (($result = $findPasswordBp->checkResetEmail($value, $code)) instanceof PwError) {
             $this->showError($result->getError());
         }
     }
     if ($type == PwFindPassword::WAY_MOBILE) {
         if ($findPasswordBp->isOverByMobile()) {
             $this->showError('USER:findpwd.over.limit.mobile');
         }
         list($mobile, $mobileCode) = $this->getInput(array('mobile', 'mobileCode'), 'get');
         if (($mobileCheck = Wekit::load('mobile.srv.PwMobileService')->checkVerify($mobile, $mobileCode)) instanceof PwError) {
             $this->showError($mobileCheck->getError());
         }
     }
     $resource = Wind::getComponent('i18n');
     list($_pwdMsg, $_pwdArgs) = PwUserValidator::buildPwdShowMsg();
     $this->setOutput($resource->getMessage($_pwdMsg, $_pwdArgs), 'pwdReg');
     $this->setOutput($userinfo['username'], 'username');
     $this->setOutput($statu, 'statu');
     $this->setTemplate('findpwd_resetpwd');
 }