Beispiel #1
0
 /**
  * 获取cookie配置
  * @method config
  * @param  [string] $name [配置变量名]
  * @return [mixed]       [description]
  * @author NewFuture
  */
 private static function config($name)
 {
     if (!($config = self::$_config)) {
         $config = Config::get('cookie');
         if (!($key = Kv::get('COOKIE_aes_key'))) {
             /*重新生成加密密钥*/
             $key = Random::word(32);
             Kv::set('COOKIE_aes_key', $key);
         }
         $config['key'] = $key;
         self::$_config = $config;
     }
     return isset($config[$name]) ? $config[$name] : null;
 }
Beispiel #2
0
 /**
  * 绑定邮箱,发送邮箱验证信息
  * PUT /user/1/email {email:"*****@*****.**"}
  * @method GET_infoAction
  * @param  integer        $id [description]
  * @author NewFuture
  */
 public function POST_emailAction($id = 0)
 {
     $id = $this->auth($id);
     $response['status'] = 0;
     if (!Input::post('email', $email, 'email')) {
         $response['info'] = '无效邮箱';
     } elseif (UserModel::getByEmail($email)) {
         $response['info'] = '已经绑定过用户';
     } elseif (!Safe::checkTry('bind_email_' . $id)) {
         $response['info'] = '发送次数过多,12小时之后重试';
     } else {
         /*生成验证码*/
         $name = UserModel::where('id', $id)->get('name');
         $code = ['use_id' => $id, 'type' => 1];
         $Code = new Model('code');
         $Code->delete($code);
         $code['code'] = $id . '_' . Random::word(16);
         $code['content'] = $email;
         /*发送邮件*/
         if ($Code->insert($code) && Mail::sendVerify($email, $code['code'], $name)) {
             $response['status'] = 1;
             $response['info'] = '验证邮件成功发送至:' . $email;
         } else {
             $response['info'] = '邮件发送出错[最多还可重发' . Config::get('try.times') . '次]';
         }
     }
     $this->response = $response;
 }
Beispiel #3
0
 /**
  * 获取加密密钥
  * @method key
  * @return [type] [description]
  * @author NewFuture
  */
 public static function key()
 {
     if (!($key = Kv::get('COOKIE_aes_key'))) {
         /*重新生成加密密钥*/
         $key = Random::word(32);
         Kv::set('COOKIE_aes_key', $key);
     }
     return $key;
 }