Beispiel #1
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;
 }
Beispiel #2
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;
 }
Beispiel #3
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;
 }
 /**
  * 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;
     }
 }