package helpers import ( "errors" "fmt" "github.com/gofiber/fiber/v2" ) func FiberErrorHandler(c *fiber.Ctx, err error) error { // Status code defaults to 500 code := fiber.StatusInternalServerError // Retrieve the custom status code if it's a *fiber.Error var e *fiber.Error if errors.As(err, &e) { code = e.Code } title := fmt.Sprintf("Erreur %d", code) message := err.Error() if code == 500 { message = "Une erreur est survenue, merci de prendre contact avec un administrateur." } // Send custom error page return c.Status(code).Render("error_page", fiber.Map{ "PageTitle": title, "Code": code, "Message": message, }) }