示例#1
0
 /**
  * Displays the login page
  */
 public function actionLogin()
 {
     $model = new AdminLoginForm();
     if (isset($_POST['AdminLoginForm'])) {
         //var_dump($_POST['LoginForm']);die;
         $model->attributes = $_POST['AdminLoginForm'];
         if ($model->validate()) {
             /* Change at yii 1.1.13:
              * we not use: if (strpos(Yii::app()->user->returnUrl,'/index.php')===false) to check returnUrl
              */
             if (strtolower(Yii::app()->user->returnUrl) !== strtolower(Yii::app()->baseUrl . '/')) {
                 $this->redirect(Yii::app()->user->returnUrl);
             }
             switch (Yii::app()->user->role_id) {
                 case ROLE_MANAGER:
                     $this->redirect(Yii::app()->createAbsoluteUrl('admin'));
                     break;
                 case ROLE_ADMIN:
                     $this->redirect(Yii::app()->createAbsoluteUrl('admin'));
                     break;
                 default:
                     $this->redirect(Yii::app()->createAbsoluteUrl('admin'));
             }
         }
     }
     $this->render('login', array('model' => $model));
 }
示例#2
0
 public function beforeControllerAction($controller, $action)
 {
     if (parent::beforeControllerAction($controller, $action)) {
         Yii::app()->errorHandler->errorAction = 'admin/site/error';
         $route = $controller->id . '/' . $action->id;
         $publicPages = array('site/login', 'site/error');
         if (!isset(Yii::app()->user->id)) {
             if (isset($_COOKIE[VERZ_COOKIE_ADMIN])) {
                 $data = json_decode($_COOKIE[VERZ_COOKIE_ADMIN], true);
                 $model = new AdminLoginForm();
                 $_POST['AdminLoginForm']['username'] = $data[VERZLOGIN];
                 $_POST['AdminLoginForm']['password'] = $data[VERZLPASS];
                 if (isset($_POST['AdminLoginForm'])) {
                     $model->attributes = $_POST['AdminLoginForm'];
                     if ($model->validate()) {
                         if (strpos(Yii::app()->user->returnUrl, '/index.php') === false) {
                             Yii::app()->controller->redirect(Yii::app()->user->returnUrl);
                         }
                         switch (Yii::app()->user->role_id) {
                             case ROLE_MANAGER:
                                 Yii::app()->controller->redirect(Yii::app()->createAbsoluteUrl('admin/site/index'));
                                 break;
                             case ROLE_ADMIN:
                                 Yii::app()->controller->redirect(Yii::app()->createAbsoluteUrl('admin/site/index'));
                                 break;
                             case ROLE_SUB_ADMIN:
                                 Yii::app()->controller->redirect(Yii::app()->createAbsoluteUrl('admin/site/index'));
                                 break;
                             default:
                                 Yii::app()->controller->redirect(Yii::app()->createAbsoluteUrl('/'));
                         }
                     }
                 }
             }
         }
         if (isset(Yii::app()->user->id)) {
             $mUser = Users::model()->findByPk(Yii::app()->user->id);
             if (is_null($mUser) || $mUser->status == STATUS_INACTIVE || $mUser->application_id == FE) {
                 Yii::app()->user->logout();
                 Yii::app()->controller->redirect(Yii::app()->createAbsoluteUrl('admin/site/login'));
             }
         }
         //                if (!in_array($route, $publicPages))
         //                    if(!isset (Yii::app()->user->id))
         //                        Yii::app()->user->loginRequired();
         return true;
     } else {
         return false;
     }
 }
示例#3
0
 public function actionLoginAdmin()
 {
     $model = new AdminLoginForm();
     if (isset($_POST['AdminLoginForm'])) {
         $model->attributes = $_POST['AdminLoginForm'];
         if ($model->validate()) {
             if ($model->login()) {
                 if (Yii::app()->user->returnUrl) {
                     $this->redirect(Yii::app()->user->returnUrl);
                     return;
                 }
                 $this->redirect(Yii::app()->homeUrl);
             }
         }
     }
     $this->renderPartial('loginAdministrator', array('model' => $model));
 }
示例#4
0
 public function actionLogin()
 {
     if (!Yii::app()->user->isGuest) {
         $this->redirect(Yii::app()->createUrl('/'));
     }
     $model = new AdminLoginForm();
     if (isset($_POST['AdminLoginForm'])) {
         $model->attributes = $_POST['AdminLoginForm'];
         // validate user input and redirect to the previous page if valid
         if ($model->validate() && $model->login()) {
             $this->redirect(Yii::app()->createUrl('file/admin'));
         }
     }
     // display the login form
     $this->render('login', array('model' => $model));
 }