package controllers import ( "amocrm/internal/models" "github.com/gofiber/fiber/v2" ) func (c *Controller) ChangeQuizSettings(ctx *fiber.Ctx) error { quizID := ctx.Params("quizID") if quizID == "" { return ctx.Status(fiber.StatusBadRequest).SendString("quizID is nil") } var request models.RulesReq if err := ctx.BodyParser(&request); err != nil { return ctx.Status(fiber.StatusBadRequest).JSON(fiber.Map{"error": "Invalid request payload"}) } err := c.service.ChangeQuizSettings(ctx.Context(), &request) if err != nil { return ctx.Status(fiber.StatusInternalServerError).SendString("Internal Server Error") } return ctx.SendStatus(fiber.StatusOK) } func (c *Controller) SetQuizSettings(ctx *fiber.Ctx) error { quizID := ctx.Params("quizID") if quizID == "" { return ctx.Status(fiber.StatusBadRequest).SendString("quizID is nil") } var request models.RulesReq if err := ctx.BodyParser(&request); err != nil { return ctx.Status(fiber.StatusBadRequest).JSON(fiber.Map{"error": "Invalid request payload"}) } err := c.service.SetQuizSettings(ctx.Context(), &request) if err != nil { return ctx.Status(fiber.StatusInternalServerError).SendString("Internal Server Error") } return ctx.SendStatus(fiber.StatusOK) } func (c *Controller) GettingQuizRules(ctx *fiber.Ctx) error { quizID := ctx.Params("quizID") if quizID == "" { return ctx.Status(fiber.StatusBadRequest).SendString("quizID is nil") } response, err := c.service.GettingQuizRules(ctx.Context()) if err != nil { return ctx.Status(fiber.StatusInternalServerError).SendString("Internal Server Error") } return ctx.Status(fiber.StatusOK).JSON(response) }