package controllers import ( "git.gnous.eu/Rick/calendrier/models" "git.gnous.eu/Rick/calendrier/services" "github.com/gofiber/fiber/v2" ) // @Summary Retourne tous les évènemenst // @Tag event // @Param name query string false "Nom de l'évènement" // @Produce json // @Success 200 {array} models.Event // @Failure 401 "Token mal formaté" // @Failure 500 "Erreur dans la base de données" // @Router /events [get] func GetEvents(c *fiber.Ctx) error { return nil } // @Summary Retourne les informations sur un évènement // @Tag event // @Produce json // @Success 200 models.Event // @Failure 401 "Token mal formaté" // @Failure 404 "Évènement introuvable" // @Failure 500 "Erreur dans la base de données" // @Router /event/{id} [get] func GetEvent(c *fiber.Ctx) error { return nil } // @Summary Créer un évènement // @Tag event // @Accept json // @Success 200 // @Failure 401 "Token mal formaté" // @Failure 500 "Erreur dans la base de données" // @Router /event [post] func PostEvent(c *fiber.Ctx) error { // TODO faire la création du lien avec l'utilisateur // TODO ignorer l'id tmp := new(models.Event) err := c.BodyParser(tmp) name := GetName(c) if err != nil { return c.Status(fiber.StatusBadRequest).JSON(fiber.Map{"err": err.Error()}) } err = services.CreateEvent(tmp, name) if err != nil { return c.Status(fiber.StatusBadRequest).JSON(fiber.Map{"err": err.Error()}) } else { return c.SendStatus(fiber.StatusOK) } } // @Summary Modifie les informations sur un évènement // @Tag event // @Accept json // @Success 200 // @Failure 401 "Token mal formaté" // @Failure 404 "Évènement introuvable" // @Failure 500 "Erreur dans la base de données" // @Router /event/{id} [patch] func PatchEvent(c *fiber.Ctx) error { return nil } // @Summary Retourne les informations sur un évènement // @Tag event // @Success 200 // @Failure 401 "Token mal formaté" // @Failure 404 "Évènement introuvable" // @Failure 500 "Erreur dans la base de données" // @Router /event/{id} [delete] func DeleteEvent(c *fiber.Ctx) error { return nil } // @Summary Retourne les informations de toutes les éditions d'un évènement // @Tag event // @Param from query int false "Date minimum de l'édition." // @Param to query int false "Date maximum de l'édition." // @Produce json // @Success 200 {array} models.Edition // @Failure 401 "Token mal formaté" // @Failure 404 "Évènement ou édition introuvable" // @Failure 500 "Erreur dans la base de données" // @Router /event/{id}/editions [get] func GetEditions(c *fiber.Ctx) error { return nil } // @Summary Retourne les informations sur une édition d'un évènement // @Tag event // @Produce json // @Success 200 models.Edition // @Failure 401 "Token mal formaté" // @Failure 404 "Évènement ou édition introuvable" // @Failure 500 "Erreur dans la base de données" // @Router /event/{id}/edition/{id} [get] func GetEdition(c *fiber.Ctx) error { return nil } // @Summary Créer une édition // @Tag event // @Produce json // @Success 200 // @Failure 401 "Token mal formaté" // @Failure 500 "Erreur dans la base de données" // @Router /event/{id}/edition [post] func PostEdition(c *fiber.Ctx) error { return nil } // @Summary Met à jour une édition // @Tag event // @Produce json // @Success 200 // @Failure 401 "Token mal formaté" // @Failure 404 "Évènement ou édition introuvable" // @Failure 500 "Erreur dans la base de données" // @Router /event/{id}/edition/{id} [patch] func PatchEdition(c *fiber.Ctx) error { return nil } // @Summary Supprime une édition // @Tag event // @Produce json // @Success 200 // @Failure 401 "Token mal formaté" // @Failure 404 "Évènement ou édition introuvable" // @Failure 500 "Erreur dans la base de données" // @Router /event/{id}/edition/{id} [delete] func DeleteEdition(c *fiber.Ctx) error { return nil } // @Summary Ajoute un utilisateur dans un évènement // @Tag event // @Success 200 // @Failure 401 "Token mal formaté" // @Failure 404 "Évènement ou utilisateur introuvable" // @Failure 500 "Erreur dans la base de données" // @Router /event/{id}/user/{id} [post] func PostEventUser(c *fiber.Ctx) error { return nil } // @Summary Supprime un utilisateur dans un évènement // @Tag event // @Success 200 // @Failure 401 "Token mal formaté" // @Failure 404 "Évènement ou utilisateur introuvable" // @Failure 500 "Erreur dans la base de données" // @Router /event/{id}/user/{id} [delete] func DeleteEventUser(c *fiber.Ctx) error { return nil }