Initial commit
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
package models
|
||||
|
||||
import (
|
||||
"errors"
|
||||
|
||||
"github.com/gookit/validate"
|
||||
"github.com/sujit-baniya/fiber-boilerplate/app"
|
||||
)
|
||||
|
||||
type Login struct {
|
||||
NombreUsuario string `json:"nombre_usuario" gorm:"nombre_usuario" form:"nombre_usuario" validate:"required"`
|
||||
Password string `json:"password" gorm:"password" form:"password" validate:"required"`
|
||||
}
|
||||
|
||||
// Messages you can custom validator error messages.
|
||||
func (l Login) Messages() map[string]string {
|
||||
return validate.MS{
|
||||
"required": "oh! the {field} is required",
|
||||
"nombre_usuario": "Is required",
|
||||
}
|
||||
}
|
||||
|
||||
func (Login) TableName() string {
|
||||
return "users"
|
||||
}
|
||||
|
||||
func (l *Login) CheckLogin() (*Users, error) {
|
||||
|
||||
user, err := GetUserByUsuario(l.NombreUsuario)
|
||||
if err != nil {
|
||||
return nil, errors.New("Usuario inactivo o correo no verificado, Contacte con soporte")
|
||||
}
|
||||
|
||||
if user.Password == "" {
|
||||
return nil, errors.New("no_password")
|
||||
}
|
||||
|
||||
match, err := app.Http.Hash.Match(l.Password, user.Password)
|
||||
if err != nil {
|
||||
return nil, errors.New("Contraseña incorrecta")
|
||||
}
|
||||
if !match {
|
||||
return nil, errors.New("Usuario o contraseña incorrectos")
|
||||
}
|
||||
|
||||
return user, nil
|
||||
}
|
||||
Reference in New Issue
Block a user