diff options
| author | Leonardo Bishop <me@leonardobishop.net> | 2025-07-14 01:55:10 +0100 |
|---|---|---|
| committer | Leonardo Bishop <me@leonardobishop.net> | 2025-07-14 01:55:10 +0100 |
| commit | 4c3e5c256930249798768b0195c42efca1428586 (patch) | |
| tree | 0492551ddbfdfbaa192804b95d0ce11e6cbdb406 /web/command/html/delete.go | |
| parent | 08a3fb8a2b0281c3c329b33215ec7f8866add606 (diff) | |
Add site deletion
Diffstat (limited to 'web/command/html/delete.go')
| -rw-r--r-- | web/command/html/delete.go | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/web/command/html/delete.go b/web/command/html/delete.go new file mode 100644 index 0000000..a2059f5 --- /dev/null +++ b/web/command/html/delete.go @@ -0,0 +1,58 @@ +package html + +import ( + "fmt" + + . "maragu.dev/gomponents" + . "maragu.dev/gomponents/html" +) + +func DeletePage(success, err string, siteName string) Node { + return page("Delete "+siteName, + H1(Text("Delete "+siteName)), + + If(success != "", Group{ + alertSuccess(success), + Div( + Class("control-group group-right"), + navButton("OK", "/"), + ), + }), + + If(success == "", Group{ + If(err != "", alertError(err)), + + Form( + Method("post"), + + FieldSet( + Legend(Text("Delete")), + Span( + Input( + ID("delete"), + Name("delete"), + Type("checkbox"), + ), + Label( + For("delete"), + Text(fmt.Sprintf("Really delete site %s?", siteName)), + ), + ), + Span( + Class("form-help"), + Text("Check the box to confirm deletion. Data on disk (including all site versions) will be deleted. This action is irreversible."), + ), + ), + + Div( + Class("control-group group-right"), + navButton("Go back", fmt.Sprintf("/site/%s/", siteName)), + Input( + Type("submit"), + Value("Submit"), + ), + ), + ), + }), + ) +} |
