package domain import ( "strconv" domainService "dove/services/domain" "dove/utils/meta" "dove/utils/shortcuts" "github.com/gofiber/fiber/v2" ) func CreateDomain(context *fiber.Ctx) error { body, parseError := meta.Body[domainService.CreateDomainRequest](context) if parseError != nil { return shortcuts.BadRequestError(context, parseError) } serviceError := domainService.CreateDomain(body) if serviceError != nil { return shortcuts.HandleError(context, serviceError) } return shortcuts.Redirect(context, "domains.manage") } func DeleteDomain(context *fiber.Ctx) error { domainID, parseError := strconv.ParseUint(meta.Request(context).Param("id"), 10, 64) if parseError != nil { return shortcuts.BadRequestError(context, parseError) } serviceError := domainService.DeleteDomain(uint(domainID)) if serviceError != nil { return shortcuts.HandleError(context, serviceError) } return shortcuts.Redirect(context, "domains.manage") } func CreateTLD(context *fiber.Ctx) error { body, parseError := meta.Body[domainService.CreateTLDRequest](context) if parseError != nil { return shortcuts.BadRequestError(context, parseError) } serviceError := domainService.CreateTLD(body) if serviceError != nil { return shortcuts.HandleError(context, serviceError) } return shortcuts.Redirect(context, "domains.tlds") } func UpdateTLD(context *fiber.Ctx) error { tldID, parseError := strconv.ParseUint(meta.Request(context).Param("id"), 10, 64) if parseError != nil { return shortcuts.BadRequestError(context, parseError) } body, bodyError := meta.Body[domainService.UpdateTLDRequest](context) if bodyError != nil { return shortcuts.BadRequestError(context, bodyError) } serviceError := domainService.UpdateTLD(uint(tldID), body) if serviceError != nil { return shortcuts.HandleError(context, serviceError) } return shortcuts.Redirect(context, "domains.tlds") } func DeleteTLD(context *fiber.Ctx) error { serviceError := domainService.DeleteTLD(meta.Request(context).Param("name")) if serviceError != nil { return shortcuts.HandleError(context, serviceError) } return shortcuts.Redirect(context, "domains.tlds") }