package main import "github.com/nbd-wtf/go-nostr" templ reportsPage(reports chan *nostr.Event, loggedUser string) { @layout(loggedUser) {

reports received

for report := range reports {
if e := report.Tags.GetFirst([]string{"e", ""}); e != nil { @eventReportComponent(e, report) } else if p := report.Tags.GetFirst([]string{"p", ""}); p != nil { @profileReportComponent(p, report) }
}
} } templ eventReportComponent(e *nostr.Tag, report *nostr.Event) { if res, _ := sys.StoreRelay.QuerySync(ctx, nostr.Filter{IDs: []string{(*e)[1]}}); len(res) > 0 {
if len(*e) >= 3 { { (*e)[2] } } { " report" }
by @userNameComponent(sys.FetchProfileMetadata(ctx, report.PubKey))
{ report.Content }
event reported:
{ res[0].String() }
} } templ profileReportComponent(p *nostr.Tag, report *nostr.Event) { if isPublicKeyInWhitelist((*p)[1]) {
if len(*p) >= 3 { { (*p)[2] } } { " report" }
by @userNameComponent(sys.FetchProfileMetadata(ctx, report.PubKey))
{ report.Content }
profile reported: @userNameComponent(sys.FetchProfileMetadata(ctx, (*p)[1]))
} }