diff options
| author | Bobby <[email protected]> | 2026-03-08 05:43:04 +0530 |
|---|---|---|
| committer | Bobby <[email protected]> | 2026-03-08 05:43:04 +0530 |
| commit | 662dd2069dc8590e8b54823a33726464cf10c4e7 (patch) | |
| tree | 55a740e6114440d7e311afd3f5ba79a7101965f8 /pages/domain/domain.go | |
| parent | d21ea918864a8b18fef94bbfaec8097444be1b17 (diff) | |
| download | dove-662dd2069dc8590e8b54823a33726464cf10c4e7.tar.xz dove-662dd2069dc8590e8b54823a33726464cf10c4e7.zip | |
feat(domains): enhance TLD and domain management with edit and delete functionality
- Added edit and delete buttons for TLDs in the TLD management interface.
- Implemented a modal confirmation for delete actions across TLDs, mailboxes, users, and aliases.
- Created separate edit pages for domains and TLDs with forms for updating their details.
- Improved user experience by adding alerts for error messages and success notifications.
feat(mail): streamline mailbox management with alias support
- Introduced alias creation and deletion functionality for mailboxes.
- Enhanced mailbox edit interface to include alias management.
- Added dropdowns for selecting users and domains when creating aliases.
fix(alerts): implement alert system for error messages
- Developed a reusable alert component to display error messages.
- Integrated alert dismiss functionality with automatic timeout for user notifications.
refactor: general code improvements and organization
- Updated error handling in the backend to support HTMX requests.
- Refactored redirect functions to handle HTMX redirects appropriately.
Diffstat (limited to 'pages/domain/domain.go')
| -rw-r--r-- | pages/domain/domain.go | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/pages/domain/domain.go b/pages/domain/domain.go index cb1022b..7c99f21 100644 --- a/pages/domain/domain.go +++ b/pages/domain/domain.go @@ -1,6 +1,8 @@ package domain import ( + "strconv" + domainService "dove/services/domain" "dove/utils/meta" "dove/utils/shortcuts" @@ -28,7 +30,37 @@ func NewDomain(context *fiber.Ctx) error { return shortcuts.Render(context, "domains/newdomain", domainService.DomainFormData()) } +func EditDomain(context *fiber.Ctx) error { + domainID, parseError := strconv.ParseUint(meta.Request(context).Param("id"), 10, 64) + if parseError != nil { + return shortcuts.BadRequestError(context, parseError) + } + + formData, serviceError := domainService.EditDomainFormData(uint(domainID)) + if serviceError != nil { + return shortcuts.HandleError(context, serviceError) + } + + meta.SetPageTitle(context, "Edit Domain") + return shortcuts.Render(context, "domains/editdomain", formData) +} + func NewTLD(context *fiber.Ctx) error { meta.SetPageTitle(context, "New TLD") return shortcuts.Render(context, "domains/newtld", nil) } + +func EditTLD(context *fiber.Ctx) error { + tldID, parseError := strconv.ParseUint(meta.Request(context).Param("id"), 10, 64) + if parseError != nil { + return shortcuts.BadRequestError(context, parseError) + } + + formData, serviceError := domainService.EditTLDFormData(uint(tldID)) + if serviceError != nil { + return shortcuts.HandleError(context, serviceError) + } + + meta.SetPageTitle(context, "Edit TLD") + return shortcuts.Render(context, "domains/edittld", formData) +}
\ No newline at end of file |
