Пример #1
0
 /**
  * Asigna configuración por defecto a un usuario
  * @param $id_usuario
  * @param $escenario
  */
 public function asignarConfiguracionUsuario($id_usuario, $escenario)
 {
     $config = new Configuracion();
     $config->scenario = $escenario;
     $config->usuario = $id_usuario;
     $config->alertas = 1;
     $config->notificaciones = 1;
     $config->promociones = 1;
     $config->estadisticas = 1;
     if ($config->validate()) {
         $config->save();
     }
 }
Пример #2
0
 /**
  * Signs user up.
  *
  * @return User|null the saved model or null if saving fails
  */
 public function registrar()
 {
     if ($this->validate()) {
         $user = new Usuarios();
         $user->nombre = $this->nombre;
         $user->correo = $this->correo;
         $user->clave = $this->clave;
         $user->setPassword($this->clave);
         $user->tipo = Usuarios::ES_PARTICULAR;
         $user->estado = Usuarios::ESTA_OBSERVACION;
         $user->setStatus(Usuarios::ESTADO_ACTIVO);
         $user->generateAuthKey();
         if ($user->save()) {
             Autorizacion::asignarRolParticular($user->idusuario);
             $config = new Configuracion();
             $config->asignarConfiguracionUsuario($user->idusuario, Configuracion::ESCENARIO_WEB);
             return $user;
         }
     }
     return null;
 }
Пример #3
0
 /**
  * VISTA MIS DATOS
  * @return mixed
  */
 public function run()
 {
     $user = Yii::$app->getUser();
     $model = Configuracion::find()->where('usuario = :usuario', [':usuario' => $user->getId()])->one();
     $model->scenario = Configuracion::ESCENARIO_WEB;
     if (Yii::$app->request->isAjax && $model->load(Yii::$app->request->post())) {
         Yii::$app->response->format = Response::FORMAT_JSON;
         return ActiveForm::validate($model);
     }
     if ($model->load(Yii::$app->request->post()) && $model->save()) {
         $post = Yii::$app->request->post('Usuarios');
         $model->attributes = $post;
         return $this->controller->redirect('configuracion');
     }
     return $this->controller->render('configuracion', ['model' => $model]);
 }
Пример #4
0
 /**
  * Crea un usuario temporal con el fin de poder enviar mensajes a un propietario de articulo
  * @param $nombre
  * @param $correo
  * @param $telefono
  * @return array|Usuarios|null|ActiveRecord
  */
 public function crearUsuarioTemporal($nombre, $correo, $telefono)
 {
     $usuario = Usuarios::find()->where('correo = :correo', [':correo' => $correo])->one();
     if (empty($usuario)) {
         $user = new Usuarios();
         $user->scenario = self::ESCENARIO_CREAR_CUENTA_TEMPORAL;
         $user->nombre = $nombre;
         $user->correo = $correo;
         $user->telefono = $telefono;
         $user->clave = self::CLAVE_TEMPORAL;
         $user->setPassword($this->clave);
         $user->tipo = Usuarios::ES_PARTICULAR;
         $user->estado = Usuarios::ESTA_TEMPORAL;
         $user->generateAuthKey();
         if ($user->save()) {
             Autorizacion::asignarRolParticular($user->idusuario);
             $config = new Configuracion();
             $config->asignarConfiguracionUsuario($user->idusuario, Configuracion::ESCENARIO_WEB);
             $usuario = $user;
         }
     }
     return $usuario;
 }
Пример #5
0
 /**
  * Crea usuario. Sólo si es la primera vez que hace login.
  * @return $usuario
  */
 private function crearUsuario()
 {
     $usuario = new Usuarios();
     $usuario->correo = strtolower($this->correo);
     $usuario->nombre = $this->nombrePerfil();
     $usuario->genero = $this->convertirGenero();
     $usuario->estado = Usuarios::ESTA_VERIFICADO;
     $usuario->tipo = Usuarios::ES_PARTICULAR;
     $usuario->setPassword(Yii::$app->security->generateRandomString(6));
     $usuario->generateAuthKey();
     $usuario->generatePasswordResetToken();
     if ($usuario->save()) {
         Autorizacion::asignarRolParticular($usuario->idusuario);
         $config = new Configuracion();
         $config->asignarConfiguracionUsuario($usuario->idusuario, Configuracion::ESCENARIO_WEB);
         //guardar imagen perfil
         $this->guardarImagenPerfil($usuario);
         //enviar correo bienvenida al usuario
         MensajeriaHelper::enviarBienvenidaUsuario($usuario);
         return $usuario;
     }
 }
Пример #6
0
 /**
  * Registra un usuario empresario.
  *
  * @return Usuarios|null the saved model or null if saving fails
  */
 public function registrarEmpresario()
 {
     if ($this->validate()) {
         $usuario = new Usuarios();
         $usuario->nombre = $this->nombre;
         $usuario->correo = $this->correo;
         $usuario->clave = $this->clave;
         $usuario->municipio = $this->id_municipio;
         $usuario->setPassword($this->clave);
         $usuario->tipo = Usuarios::ES_EMPRESA;
         $usuario->estado = Usuarios::ESTA_OBSERVACION;
         $usuario->setStatus(Usuarios::ESTADO_INACTIVO);
         $usuario->generateAuthKey();
         $usuario->generateActivationToken();
         if ($usuario->save()) {
             Autorizacion::asignarRolParticular($usuario->idusuario);
             $config = new Configuracion();
             $config->asignarConfiguracionUsuario($usuario->idusuario, Configuracion::ESCENARIO_WEB);
             MensajeriaHelper::enviarRespuestaSolicitudEmpresario($usuario);
             return $usuario;
         }
     }
     return null;
 }