コード例 #1
0
ファイル: UiController.php プロジェクト: dev-lav/htdocs
 public function actionLogin()
 {
     $this->layout = CrugeUtil::config()->loginLayout;
     $model = Yii::app()->user->um->getNewCrugeLogon('login');
     // por ahora solo un metodo de autenticacion por vez es usado, aunque sea un array en config/main
     //
     $model->authMode = CrugeFactory::get()->getConfiguredAuthMethodName();
     Yii::app()->user->setFlash('loginflash', null);
     Yii::log(__CLASS__ . "\nactionLogin\n", "info");
     if (isset($_POST[CrugeUtil::config()->postNameMappings['CrugeLogon']])) {
         $model->attributes = $_POST[CrugeUtil::config()->postNameMappings['CrugeLogon']];
         if ($model->validate()) {
             if ($model->login(false) == true) {
                 Yii::log(__CLASS__ . "\nCrugeLogon->login() returns true\n", "info");
                 // a modo de conocimiento, Yii::app()->user->returnUrl es
                 // establecida automaticamente por CAccessControlFilter cuando
                 // preFilter llama a accessDenied quien a su vez llama a
                 // CWebUser::loginRequired que es donde finalmente se llama a setReturnUrl
                 $this->redirect(Yii::app()->user->returnUrl);
             } else {
                 Yii::app()->user->setFlash('loginflash', Yii::app()->user->getLastError());
             }
         } else {
             Yii::log(__CLASS__ . "\nCrugeUser->validate es false\n" . CHtml::errorSummary($model), "error");
         }
     }
     $this->render('login', array('model' => $model));
 }
コード例 #2
0
ファイル: CrugeStoredUser.php プロジェクト: dev-lav/htdocs
 public function getUserDescription($boolLoadUserFields = false, $sep = ',')
 {
     $fieldNames = CrugeUtil::config()->userDescriptionFieldsArray;
     $tmp = "";
     if (in_array("username", $fieldNames)) {
         $tmp .= $sep . $this->username;
     }
     if (in_array("email", $fieldNames)) {
         $tmp .= $sep . $this->email;
     }
     if ($fieldNames != null) {
         if ($boolLoadUserFields == true) {
             $this->setFields(CrugeFactory::get()->getICrugeFieldListModels($this));
         }
         foreach ($fieldNames as $fname) {
             if ($fname != "username" && $fname != "email") {
                 $tmp .= $sep . $this->getCustomFieldValue($fname, $fname);
             }
         }
     }
     if ($tmp == "") {
         $tmp = $this->getUsername();
     }
     return ltrim($tmp, $sep . " ");
 }
コード例 #3
0
ファイル: UsuarioController.php プロジェクト: Telemedellin/tm
 public function actionIngresar()
 {
     if (Yii::app()->user->hasFlash('backto')) {
         $backto = Yii::app()->user->getFlash('backto');
         Yii::app()->user->setFlash('backto', null);
         Yii::app()->user->setFlash('backto', $backto);
     } else {
         $backto = 'usuario/perfil';
     }
     if (!Yii::app()->user->isGuest) {
         $this->redirect(bu($backto));
     }
     $model = Yii::app()->user->um->getNewCrugeLogon('login');
     $model->authMode = CrugeFactory::get()->getConfiguredAuthMethodName();
     Yii::app()->user->setFlash('loginflash', null);
     Yii::log(__CLASS__ . "\nactionLogin\n", "info");
     if (isset($_POST[CrugeUtil::config()->postNameMappings['CrugeLogon']])) {
         $model->attributes = $_POST[CrugeUtil::config()->postNameMappings['CrugeLogon']];
         if ($model->validate()) {
             if ($model->login(false) == true) {
                 Yii::log(__CLASS__ . "\nCrugeLogon->login() returns true\n", "info");
                 // a modo de conocimiento, Yii::app()->user->returnUrl es
                 // establecida automaticamente por CAccessControlFilter cuando
                 // preFilter llama a accessDenied quien a su vez llama a
                 // CWebUser::loginRequired que es donde finalmente se llama a setReturnUrl
                 $this->redirect(bu($backto));
             } else {
                 Yii::app()->user->setFlash('loginflash', Yii::app()->user->getLastError());
             }
         } else {
             Yii::log(__CLASS__ . "\nCrugeUser->validate es false\n" . CHtml::errorSummary($model), "error");
         }
     }
     $this->render('ingresar', array('model' => $model));
 }
コード例 #4
0
ファイル: LoginW.php プロジェクト: Telemedellin/tm
 public function getModel()
 {
     $model = Yii::app()->user->um->getNewCrugeLogon('login');
     $model->authMode = CrugeFactory::get()->getConfiguredAuthMethodName();
     return $model;
 }
コード例 #5
0
ファイル: CrugeUserManager.php プロジェクト: dev-lav/htdocs
 /**
  * loginUser
  *     metodo que emula el inicio de sesion tal cual se hubiese usado
  *  el formulario de login, respetandose el control de sesion y demas.
  *
  * @param string $usernameOremail
  * @access public
  * @return instancia de ICrugeStoredUser o null
  */
 public function loginUser($usernameOremail)
 {
     Yii::log(__METHOD__ . " usernameOremail=" . $usernameOremail, "info");
     $user = $this->loadUser($usernameOremail);
     if ($user != null) {
         // crea un modelo de formulario y le pasa los datos, sin validar.
         // aqui model es una instancia de cruge.models.ui.CrugeLogon
         //
         $model = $this->getNewCrugeLogon('login');
         $model->authMode = CrugeFactory::get()->getConfiguredAuthMethodName();
         $model->username = $usernameOremail;
         $model->password = $user->password;
         if ($model->validate()) {
             if ($model->login(true) == true) {
                 Yii::log(__METHOD__ . " retorna al usuario. exitoso.", "info");
                 return $user;
             } else {
                 // no deberia ocurrir, porque se le esta dando el password,
                 // pero respetemos el resultado de login()...paranoia.
                 Yii::log(__METHOD__ . " retorna null. no deberia.", "error");
             }
         } else {
             Yii::log(__METHOD__ . " retorna null." . CHtml::errorSummary($model, 'falla de validacion'), "error");
         }
     }
     return null;
 }
コード例 #6
0
 public function loadSessionById($id)
 {
     return CrugeFactory::get()->getICrugeSession($id);
 }
コード例 #7
0
 public function actionBienvenido()
 {
     $mensaje = Yii::app()->user->getFlash('bienvenido');
     $nombre = Yii::app()->user->getFlash('nombre');
     $model = Yii::app()->user->um->getNewCrugeLogon('login');
     $model->authMode = CrugeFactory::get()->getConfiguredAuthMethodName();
     $usuario = Usuario::model()->findByAttributes(array('cruge_user_id' => $nombre->iduser));
     $this->render('bienvenido', array('mensaje' => $mensaje, 'nombre' => $usuario->nombres, 'model' => $model));
 }