/**
  * 重置密码验证
  * 包括邮件重置密码和短信重置密码都在这里统一验证
  * @param HttpRequest $request
  */
 public function password(HttpRequest $request)
 {
     $email = $request->getParameter('email', 'trim');
     $authcode = $request->getParameter('authcode', 'trim');
     $mobile = $request->getParameter('mobile', 'trim');
     $password = $request->getParameter('password', 'trim');
     $repass = $request->getParameter('repass', 'trim');
     $userid = $request->getParameter('userid', 'intval');
     if ($email != '') {
         $__authcode = getEmailCode($email, 7200);
     } else {
         if ($mobile != '') {
             $__authcode = getMobileCode($mobile, 600);
         }
     }
     if ($__authcode != $authcode) {
         AjaxResult::ajaxResult('error', '授权码错误');
     }
     if ($password != $repass) {
         AjaxResult::ajaxResult('error', '两次输入密码不一致');
     }
     $userService = Beans::get('user.user.service');
     if ($userService->set('password', md5(md5($password)), $userid)) {
         AjaxResult::ajaxSuccessResult();
     } else {
         AjaxResult::ajaxFailtureResult();
     }
 }
 /**
  * 重新绑定邮箱
  * @param HttpRequest $request
  */
 public function bindEmail(HttpRequest $request)
 {
     $email = $request->getParameter('email', 'trim');
     $password = $request->getParameter('password', 'trim');
     $authcode = $request->getParameter('authcode', 'trim');
     //验证登录密码
     $userService = Beans::get('user.user.service');
     $conditions = array('username' => $this->loginUser['username'], 'password' => md5(md5($password)));
     if ($userService->count($conditions) == 0) {
         AjaxResult::ajaxResult('error', '登录密码错误!');
     }
     //验证授权码
     $__authcode = getEmailCode($email, 1800);
     if ($__authcode != $authcode) {
         AjaxResult::ajaxResult('error', '授权码错误!');
     }
     $mediaService = Beans::get('media.media.service');
     $data = array('email' => $email);
     if ($mediaService->update($data, $this->loginUser['id'])) {
         $this->updateLoginMedia($data);
         AjaxResult::ajaxSuccessResult();
     } else {
         AjaxResult::ajaxFailtureResult();
     }
 }
 /**
  * 邀请管理员登录
  * @param HttpRequest $request
  */
 public function inviteCheck(HttpRequest $request)
 {
     $username = $request->getParameter('username', 'trim');
     $password = $request->getParameter('password', 'trim');
     $authcode = $request->getParameter('authcode', 'trim');
     $email = $request->getParameter('email', 'trim');
     $mid = $request->getParameter('mid', 'intval');
     //管理员ID
     $__authcode = getEmailCode($email);
     if ($authcode != $__authcode) {
         AjaxResult::ajaxResult('error', "验证失败,邀请码错误或者失效!");
     }
     $userService = Beans::get('user.user.service');
     $errorMsg = null;
     $login = $userService->login($username, $password, $errorMsg);
     if ($login) {
         if ($login['ischeck'] == 2) {
             AjaxResult::ajaxResult('error', '您的帐号被封号,请联系管理员!');
         }
         $userService->setLoginUser($login);
         //更新管理员的授权状态
         $managerService = Beans::get('media.manager.service');
         $managerService->set('status', 1, $mid);
         AjaxResult::ajaxResult('ok', url('/user_ucenter_index'));
     } else {
         AjaxResult::ajaxResult('error', "验证失败,{$errorMsg}");
     }
 }
 /**
  * 邮箱激活页面验证
  * @param HttpRequest $request
  */
 public function emailActiveCheck(HttpRequest $request)
 {
     $userid = $request->getParameter('userid', 'intval');
     $authcode = $request->getParameter('authcode', 'trim');
     $userService = Beans::get('user.user.service');
     $user = $userService->getItem($userid);
     $__authcode = getEmailCode($user['email']);
     if ($__authcode != $authcode) {
         $this->assign('message', '您的激活链接已失效,请重新发送激活邮箱');
     } else {
         if ($userService->set('email_check', 1, $userid)) {
             $this->assign('message', '您的邮箱已经成功激活! <a class="red_btn" href="' . url('/user_login_index') . '">马上登录</a>');
         }
     }
     $this->setView('email_active_check');
 }