예제 #1
0
 /**
  * Displays the login page
  */
 public function actionLogin()
 {
     if (!Yii::app()->user->isGuest) {
         $this->redirect(Yii::app()->user->returnUrl);
     }
     $model = new LoginForm();
     // if it is ajax validation request
     if (isset($_POST['ajax']) && $_POST['ajax'] === 'login-form') {
         echo CActiveForm::validate($model);
         Yii::app()->end();
     }
     if (isset($_GET['redir'])) {
         Yii::app()->user->returnUrl = $_GET['redir'];
     }
     // collect user input data
     if (isset($_POST['LoginForm'])) {
         $model->attributes = $_POST['LoginForm'];
         // validate user input and redirect to the previous page if valid
         if ($model->validate() && $model->login()) {
             ## update last_login user
             $sql = "update p_user set last_login = '******' where id = " . Yii::app()->user->id;
             Yii::app()->db->createCommand($sql)->execute();
             ## audit trail tracker
             AuditTrail::login();
             $this->redirect(Yii::app()->user->returnUrl);
         }
     }
     // display the login form
     $this->renderForm('LoginForm', $model, [], ['pageTitle' => Setting::get("app.name") . " Login"]);
 }
예제 #2
0
 /**
  * Displays the login page
  */
 public function actionLogin()
 {
     if (!Yii::app()->user->isGuest) {
         $this->redirect(Yii::app()->user->returnUrl);
     }
     $model = new LoginForm();
     // if it is ajax validation request
     if (isset($_POST['ajax']) && $_POST['ajax'] === 'login-form') {
         echo CActiveForm::validate($model);
         Yii::app()->end();
     }
     if (isset($_GET['redir'])) {
         Yii::app()->user->returnUrl = $_GET['redir'];
     }
     // collect user input data
     if (isset($_POST['LoginForm'])) {
         $model->attributes = $_POST['LoginForm'];
         // validate user input and redirect to the previous page if valid
         if ($model->validate() && $model->login()) {
             ## update last_login user
             Yii::app()->db->commandBuilder->createUpdateCommand("p_user", ['last_login' => DataFilter::toSQLDateTime(date("Y-m-d H:i:s"))], new CDbCriteria(['condition' => '"id" = :p', 'params' => [':p' => Yii::app()->user->id]]));
             ## audit trail tracker
             AuditTrail::login();
             $this->redirect(Yii::app()->user->returnUrl);
         }
     }
     // display the login form
     $this->renderForm('LoginForm', $model, [], ['pageTitle' => Setting::get("app.name") . " Login"]);
 }