package views import "fmt" import "git.32bit.cafe/32bitcafe/guestbook/internal/models" import "git.32bit.cafe/32bitcafe/guestbook/internal/forms" import "time" templ GuestbookDashboardCommentsView(title string, data CommonData, website models.Website, guestbook models.Guestbook, comments []models.GuestbookComment) { @base(title, data) {
@wSidebar(website)

Comments on { website.SiteUrl }


if len(comments) == 0 {

No comments yet!

} for _, c := range comments { @GuestbookDashboardCommentView(data, website, c) }
} } templ GuestbookDashboardCommentView(data CommonData, w models.Website, c models.GuestbookComment) { {{ commentUrl := fmt.Sprintf("%s/dashboard/guestbook/comments/%s", wUrl(w), shortIdToSlug(c.ShortId)) }} {{ hxHeaders := fmt.Sprintf("{\"X-CSRF-Token\": \"%s\"}", data.CSRFToken) }}
if c.Deleted.IsZero() { }
{ c.AuthorName } if len(c.AuthorEmail) > 0 { {{ email := "mailto:" + c.AuthorEmail }} | { c.AuthorEmail } } if len(c.AuthorSite) > 0 { | { c.AuthorSite } }

{ c.Created.In(data.CurrentUser.Settings.LocalTimezone).Format("01-02-2006 03:04PM") }

{ c.CommentText }


} templ commentForm(form forms.CommentCreateForm) {
{{ error, exists := form.FieldErrors["authorName"] }} if exists { }
{{ error, exists = form.FieldErrors["authorEmail"] }} if exists { }
{{ error, exists = form.FieldErrors["authorSite"] }} if exists { }
{{ error, exists = form.FieldErrors["content"] }} if exists { }
} templ GuestbookView(title string, data CommonData, website models.Website, guestbook models.Guestbook, comments []models.GuestbookComment, form forms.CommentCreateForm) { {{ postUrl := fmt.Sprintf("/websites/%s/guestbook/comments/create", shortIdToSlug(website.ShortId)) }} if data.IsHtmx { @commentForm(form) } else { { title }