Initial commit
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
package middlewares
|
||||
|
||||
import (
|
||||
"github.com/gofiber/fiber/v2"
|
||||
"github.com/sujit-baniya/fiber-boilerplate/pkg/auth"
|
||||
)
|
||||
|
||||
func LoadUserMiddleware(c *fiber.Ctx) error {
|
||||
user, err := auth.User(c)
|
||||
if err == nil && user != nil {
|
||||
// Convertimos el usuario a un map[string]interface{} e incluimos los campos necesarios
|
||||
userData := map[string]interface{}{
|
||||
"ID": user.ID,
|
||||
"Name": user.Name,
|
||||
"Email": user.Email,
|
||||
"NombreUsuario": user.NombreUsuario,
|
||||
"IsAdmin": user.IsAdmin,
|
||||
"Role": map[string]interface{}{
|
||||
"ID": user.Role.ID,
|
||||
"Name": user.Role.Name,
|
||||
// Incluye otros campos relevantes del rol
|
||||
},
|
||||
}
|
||||
|
||||
// Guarda el map en el contexto
|
||||
c.Locals("user", userData)
|
||||
}
|
||||
// Si no está autenticado, continuamos sin agregar nada
|
||||
return c.Next()
|
||||
}
|
||||
Reference in New Issue
Block a user