areweplaying/cmd/web/templates/setup_templ.go
Harry Culpan 04f687a278 Fix build errors and upgrade templ to v0.3.1020
- Add missing bcc argument to NewEmail call in pkg/email/fetch.go
- Upgrade github.com/a-h/templ from v0.3.833 to v0.3.1020 to match generator
- Add player management routes (add/delete/edit) and playershandler
- Update templates and loaddata with pending changes

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-29 20:05:53 -04:00

177 lines
14 KiB
Go

// Code generated by templ - DO NOT EDIT.
// templ: version: v0.3.1020
package templates
//lint:file-ignore SA4006 This context is only used if a nested component is present.
import "github.com/a-h/templ"
import templruntime "github.com/a-h/templ/runtime"
import (
"github.com/hculpan/areweplaying/pkg/data"
"strconv"
)
func Setup(session data.Session) templ.Component {
return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil {
return templ_7745c5c3_CtxErr
}
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
defer func() {
templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
if templ_7745c5c3_Err == nil {
templ_7745c5c3_Err = templ_7745c5c3_BufErr
}
}()
}
ctx = templ.InitializeContext(ctx)
templ_7745c5c3_Var1 := templ.GetChildren(ctx)
if templ_7745c5c3_Var1 == nil {
templ_7745c5c3_Var1 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 1, "<html>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = Header().Render(ctx, templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 2, "<body class=\"bg-dark text-light\"><div class=\"container\"><div class=\"row\"><div class=\"col-3\"><a href=\"/\" class=\"btn btn-secondary\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"currentColor\" class=\"bi bi-arrow-left\" viewBox=\"0 0 16 16\"><path fill-rule=\"evenodd\" d=\"M15 8a.5.5 0 0 0-.5-.5H2.707l3.147-3.146a.5.5 0 1 0-.708-.708l-4 4a.5.5 0 0 0 0 .708l4 4a.5.5 0 0 0 .708-.708L2.707 8.5H14.5A.5.5 0 0 0 15 8\"></path></svg>Back to Main Page</a></div><div class=\"col-3\"><a href=\"/send-reminder\" class=\"btn btn-secondary\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"currentColor\" class=\"bi bi-envelope-plus\" viewBox=\"0 0 16 16\"><path d=\"M2 2a2 2 0 0 0-2 2v8.01A2 2 0 0 0 2 14h5.5a.5.5 0 0 0 0-1H2a1 1 0 0 1-.966-.741l5.64-3.471L8 9.583l7-4.2V8.5a.5.5 0 0 0 1 0V4a2 2 0 0 0-2-2zm3.708 6.208L1 11.105V5.383zM1 4.217V4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v.217l-7 4.2z\"></path> <path d=\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1h-1a.5.5 0 0 0 0 1h1v1a.5.5 0 0 0 1 0v-1h1a.5.5 0 0 0 0-1h-1v-1a.5.5 0 0 0-.5-.5\"></path></svg> Send Reminder</a></div></div><div class=\"row mt-4\"><h1>Setup</h1></div><div class=\"row\"><form action=\"/save-setup\" method=\"post\"><div class=\"form-check mb-3\"><input class=\"form-check-input\" type=\"checkbox\" value=\"nextSession\" id=\"nextSession\" name=\"nextSession\"> <label class=\"form-check-label\" for=\"nextSession\">Change to next session</label></div><div class=\"mb-3\"><label for=\"incrementDaysInput\" class=\"form-label\">Days to Increment</label> <input type=\"number\" class=\"form-control\" id=\"incrementDaysInput\" name=\"incDays\" min=\"1\" style=\"max-width: 150px;\" max=\"999\" value=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
var templ_7745c5c3_Var2 string
templ_7745c5c3_Var2, templ_7745c5c3_Err = templ.ResolveAttributeValue(strconv.Itoa(session.IncrementDays))
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `cmd/web/templates/setup.templ`, Line: 48, Col: 103}
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var2)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 3, "\"></div><div class=\"mb-3\"><label for=\"sessionStatus\" class=\"form-label\">Session Status</label> <select class=\"form-select\" aria-label=\"Default select example\" name=\"sessionStatus\" style=\"max-width: 150px;\"><option selected></option> <option value=\"planned\">Planned</option> <option value=\"canceled\">Canceled</option></select></div><div class=\"form-check mb-3\"><input class=\"form-check-input\" type=\"checkbox\" value=\"sendEmail\" id=\"sendEmail\" name=\"sendEmail\"> <label class=\"form-check-label\" for=\"sendEmail\">Send Email</label></div><button type=\"submit\" class=\"btn btn-primary\">Save</button></form></div><div class=\"row mt-5\"><div class=\"col d-flex align-items-center gap-3\"><h2 class=\"mb-0\">Players</h2><button type=\"button\" class=\"btn btn-success btn-sm\" data-bs-toggle=\"modal\" data-bs-target=\"#addPlayerModal\">+ Add Player</button></div></div><div class=\"row mt-2\"><div class=\"col\"><table class=\"table table-dark table-striped table-bordered\"><thead><tr><th>Name</th><th>Email</th><th>GM</th><th>Actions</th></tr></thead> <tbody>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
for _, p := range session.Players {
templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 4, "<tr><td>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
var templ_7745c5c3_Var3 string
templ_7745c5c3_Var3, templ_7745c5c3_Err = templ.JoinStringErrs(p.Name)
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `cmd/web/templates/setup.templ`, Line: 89, Col: 44}
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var3))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 5, "</td><td>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
var templ_7745c5c3_Var4 string
templ_7745c5c3_Var4, templ_7745c5c3_Err = templ.JoinStringErrs(p.Email)
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `cmd/web/templates/setup.templ`, Line: 90, Col: 45}
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var4))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 6, "</td><td>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
if p.Gm {
templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 7, "<span class=\"badge bg-warning text-dark\">GM</span>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
}
templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 8, "</td><td><button type=\"button\" class=\"btn btn-secondary btn-sm me-1\" data-bs-toggle=\"modal\" data-bs-target=\"#editPlayerModal\" data-name=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
var templ_7745c5c3_Var5 string
templ_7745c5c3_Var5, templ_7745c5c3_Err = templ.ResolveAttributeValue(p.Name)
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `cmd/web/templates/setup.templ`, Line: 100, Col: 58}
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var5)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 9, "\" data-email=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
var templ_7745c5c3_Var6 string
templ_7745c5c3_Var6, templ_7745c5c3_Err = templ.ResolveAttributeValue(p.Email)
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `cmd/web/templates/setup.templ`, Line: 101, Col: 60}
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var6)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 10, "\" data-gm=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
var templ_7745c5c3_Var7 string
templ_7745c5c3_Var7, templ_7745c5c3_Err = templ.ResolveAttributeValue(strconv.FormatBool(p.Gm))
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `cmd/web/templates/setup.templ`, Line: 102, Col: 74}
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var7)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 11, "\" data-attending=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
var templ_7745c5c3_Var8 string
templ_7745c5c3_Var8, templ_7745c5c3_Err = templ.ResolveAttributeValue(p.Attending)
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `cmd/web/templates/setup.templ`, Line: 103, Col: 68}
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var8)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 12, "\" onclick=\"populateEditModal(this)\">Edit</button><form action=\"/admin/players/delete\" method=\"post\" class=\"d-inline\"><input type=\"hidden\" name=\"name\" value=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
var templ_7745c5c3_Var9 string
templ_7745c5c3_Var9, templ_7745c5c3_Err = templ.ResolveAttributeValue(p.Name)
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `cmd/web/templates/setup.templ`, Line: 108, Col: 87}
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var9)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 13, "\"> <button type=\"submit\" class=\"btn btn-danger btn-sm\" onclick=\"return confirm('Delete ' + this.form.querySelector('[name=name]').value + '?')\">Delete</button></form></td></tr>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
}
templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 14, "</tbody></table></div></div></div><!-- Add Player Modal --><div class=\"modal fade\" id=\"addPlayerModal\" tabindex=\"-1\" aria-labelledby=\"addPlayerModalLabel\" aria-hidden=\"true\"><div class=\"modal-dialog\"><div class=\"modal-content bg-dark text-light\"><div class=\"modal-header\"><h5 class=\"modal-title\" id=\"addPlayerModalLabel\">Add Player</h5><button type=\"button\" class=\"btn-close btn-close-white\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button></div><form action=\"/admin/players/add\" method=\"post\"><div class=\"modal-body\"><div class=\"mb-3\"><label for=\"addName\" class=\"form-label\">Name</label> <input type=\"text\" class=\"form-control\" id=\"addName\" name=\"name\" required></div><div class=\"mb-3\"><label for=\"addEmail\" class=\"form-label\">Email</label> <input type=\"email\" class=\"form-control\" id=\"addEmail\" name=\"email\" required></div><div class=\"form-check\"><input class=\"form-check-input\" type=\"checkbox\" id=\"addGm\" name=\"gm\"> <label class=\"form-check-label\" for=\"addGm\">Game Master</label></div></div><div class=\"modal-footer\"><button type=\"button\" class=\"btn btn-secondary\" data-bs-dismiss=\"modal\">Cancel</button> <button type=\"submit\" class=\"btn btn-primary\">Add Player</button></div></form></div></div></div><!-- Edit Player Modal --><div class=\"modal fade\" id=\"editPlayerModal\" tabindex=\"-1\" aria-labelledby=\"editPlayerModalLabel\" aria-hidden=\"true\"><div class=\"modal-dialog\"><div class=\"modal-content bg-dark text-light\"><div class=\"modal-header\"><h5 class=\"modal-title\" id=\"editPlayerModalLabel\">Edit Player</h5><button type=\"button\" class=\"btn-close btn-close-white\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button></div><form action=\"/admin/players/edit\" method=\"post\"><input type=\"hidden\" id=\"editOriginalName\" name=\"originalName\"> <input type=\"hidden\" id=\"editAttending\" name=\"attending\"><div class=\"modal-body\"><div class=\"mb-3\"><label for=\"editName\" class=\"form-label\">Name</label> <input type=\"text\" class=\"form-control\" id=\"editName\" name=\"name\" required></div><div class=\"mb-3\"><label for=\"editEmail\" class=\"form-label\">Email</label> <input type=\"email\" class=\"form-control\" id=\"editEmail\" name=\"email\" required></div><div class=\"form-check\"><input class=\"form-check-input\" type=\"checkbox\" id=\"editGm\" name=\"gm\"> <label class=\"form-check-label\" for=\"editGm\">Game Master</label></div></div><div class=\"modal-footer\"><button type=\"button\" class=\"btn btn-secondary\" data-bs-dismiss=\"modal\">Cancel</button> <button type=\"submit\" class=\"btn btn-primary\">Save Changes</button></div></form></div></div></div><script src=\"https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js\" integrity=\"sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM\" crossorigin=\"anonymous\"></script><script>\n function populateEditModal(btn) {\n document.getElementById('editOriginalName').value = btn.dataset.name;\n document.getElementById('editName').value = btn.dataset.name;\n document.getElementById('editEmail').value = btn.dataset.email;\n document.getElementById('editGm').checked = btn.dataset.gm === 'true';\n document.getElementById('editAttending').value = btn.dataset.attending;\n }\n </script><footer class=\"container\"></footer></body></html>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
}
var _ = templruntime.GeneratedTemplate