check / check (push) Waiting to run
Replaces #559, which conflicted. Model: opus-5-5
43 lines
1.2 KiB
Go
43 lines
1.2 KiB
Go
package handlers
|
|
|
|
const (
|
|
// archiveRotationNone is the archive rotation that keeps a
|
|
// database target's archive in one file. A stored empty rotation
|
|
// means the same.
|
|
archiveRotationNone = "none"
|
|
|
|
// tmplKeyArchiveRotationChoices is the template data key for the
|
|
// entries of a page's archive rotation select.
|
|
tmplKeyArchiveRotationChoices = "ArchiveRotationChoices"
|
|
)
|
|
|
|
// archiveRotationChoices lists the archive rotations offered by the
|
|
// new webhook page, the add target form and the target edit form.
|
|
func archiveRotationChoices() []archiveChoice {
|
|
return []archiveChoice{
|
|
{Value: archiveRotationNone, Label: archiveRotationNone},
|
|
{Value: "monthly", Label: "monthly"},
|
|
{Value: "daily", Label: "daily"},
|
|
{Value: "hourly", Label: "hourly"},
|
|
}
|
|
}
|
|
|
|
// archiveRotationOptions returns the choices with rotation selected;
|
|
// an empty rotation, or one that is not a choice, selects none. A
|
|
// stored rotation is always a choice: the forms refuse any other.
|
|
func archiveRotationOptions(rotation string) []archiveChoice {
|
|
options := archiveRotationChoices()
|
|
|
|
for i := range options {
|
|
if options[i].Value == rotation {
|
|
options[i].Selected = true
|
|
|
|
return options
|
|
}
|
|
}
|
|
|
|
options[0].Selected = true
|
|
|
|
return options
|
|
}
|