Ejemplo n.º 1
0
 public function dologin()
 {
     $params = Input::all();
     if (empty($params['username'])) {
         Session::flash('error', '用户名必须填写');
         return Redirect::route('login');
     }
     if (empty($params['password'])) {
         Session::flash('error', '密码必须填写');
         return Redirect::route('login');
     }
     if (empty($params['captcha'])) {
         Session::flash('error', '验证码必须填写');
         return Redirect::route('login');
     }
     if (!$this->_validate_captcha($params['captcha'])) {
         Session::flash('error', '验证码错误');
         return Redirect::route('login');
     }
     $password = md5(md5($params['password']));
     $admin = AdminORM::whereUsername($params['username'])->wherePwd($password)->where('status', '<>', BaseORM::DISABLE)->first();
     if (!empty($admin)) {
         Session::flash('success', '登陆成功');
         $admin_id_cookie = Cookie::forever('admin_id', $admin->id);
         $admin_username_cookie = Cookie::forever('admin_username', $admin->username);
         $k_cookie = Cookie::forever('k', Crypt::encrypt($admin->id . $admin->username));
         $login_time_cookie = Cookie::forever('login_time', time());
         $admin->last_login_time = date('Y-m-d H:i:s');
         $admin->save();
         return Redirect::route('home')->withCookie($k_cookie)->withCookie($admin_id_cookie)->withCookie($admin_username_cookie)->withCookie($login_time_cookie);
     } else {
         Session::flash('error', '用户没找到');
         return Redirect::route('login');
     }
 }
Ejemplo n.º 2
0
 public function __construct()
 {
     if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') {
         $this->isAjax = TRUE;
     }
     $admin_id = Cookie::get('admin_id');
     $this->admin_id = $admin_id;
     $is_super_admin = FALSE;
     if ($admin_id) {
         $admin = AdminORM::find($admin_id);
         if ($admin->is_super_admin == 1) {
             $is_super_admin = TRUE;
             $this->is_super_admin = TRUE;
         }
     }
     View::share('g', array('is_super_admin' => $is_super_admin));
 }
Ejemplo n.º 3
0
 private function _check($params)
 {
     $msg = '';
     if (empty($params['username'])) {
         $msg = '用户名必须填写';
     }
     $admin = AdminORM::whereUsername($params['username'])->first();
     if (isset($params['currentpwd'])) {
         $password = md5(md5($params['currentpwd']));
         if ($password != $admin->pwd) {
             $msg = '当前密码不正确';
         }
         if ($params['pwd'] != $params['confirmpwd']) {
             $msg = '两次密码填写不一致';
         }
     }
     if (!empty($admin) && $params['id'] == 0) {
         $msg = '用户名重复';
     }
     return $msg;
 }
Ejemplo n.º 4
0
    $k = Cookie::get('k');
    if (!$k) {
        return Redirect::to('/login');
    }
    $key = Crypt::decrypt($k);
    if ($key != $encrypt_key) {
        return Redirect::to('/login');
    }
    if (time() - $login_time >= 86400) {
        return Redirect::to('/login');
    }
});
//验证是否为超级管理员
Route::filter('is_super_admin', function () {
    $admin_id = Cookie::get('admin_id');
    $admin = AdminORM::whereId($admin_id)->first();
    if ($admin->is_super_admin != BaseORM::ENABLE) {
        return Redirect::route('forbidden');
    }
});
Route::filter('auth', function () {
    if (Auth::guest()) {
        if (Request::ajax()) {
            return Response::make('Unauthorized', 401);
        } else {
            return Redirect::guest('login');
        }
    }
});
Route::filter('auth.basic', function () {
    return Auth::basic();