示例#1
0
 public static function crearPerfilUsuario($correo, $usuario, $clave, $ubicacion)
 {
     $perfil = array('registro' => 0);
     if (empty($correo) || empty($usuario) || empty($clave)) {
         return $perfil;
     }
     $model = new Usuarios();
     $model->username = $usuario;
     $model->password = $model->hashPassword($clave);
     $model->email = $correo;
     if ($model->validate() && $model->save()) {
         $modelPerfil = new Perfiles();
         $modelPerfil->estado = 'A';
         $modelPerfil->ubicacion = isset($ubicacion) ? $ubicacion : null;
         $modelPerfil->usuario = $model->id;
         $modelPerfil->save();
         $perfil = array('registro' => 1);
         return $perfil;
     }
     $perfil['mensaje'] = $model->getErrors();
     return $perfil;
 }
 public function actionModificarcorreo()
 {
     $model = new Usuarios('actualizarCorreo');
     $correo_actual = "";
     $rol = "organo";
     $criteria = new CDbCriteria();
     $criteria->condition = "rol='{$rol}'";
     $usuarios = Usuarios::model()->findAll($criteria);
     $lista_usuarios = CHtml::listData($usuarios, function ($usuario) {
         return CHtml::encode($usuario->usuario_id);
     }, function ($usuario) {
         return CHtml::encode($usuario->enteOrgano->nombre);
     });
     if (isset($_POST['Usuarios'])) {
         $model->attributes = $_POST['Usuarios'];
         if ($model->validate(array('correo', 'usuario_id'))) {
             $usuario = Usuarios::model()->findByAttributes(array('usuario_id' => $_POST['Usuarios']['usuario_id']));
             $usuario->usuario = strtolower($model->correo);
             $usuario->correo = strtolower($model->correo);
             if ($usuario->save(false)) {
                 Yii::app()->user->setFlash('success', 'Correo asignado con éxito.');
                 $this->enviarCorreoRecuperacion($usuario->correo, $usuario->cedula);
             } else {
                 Yii::app()->user->setFlash('error', 'Hubo un problema asignando el correo.');
             }
         }
         if ($model->usuario_id) {
             $correo_actual = Usuarios::model()->findByPk($_POST['Usuarios']['usuario_id'])->correo;
         }
     }
     $this->render('modificarcorreo', array('lista_usuarios' => $lista_usuarios, 'usuario' => $model, 'correo_actual' => $correo_actual));
 }