Files
musenalm/views/routes/reihen/body.gohtml
2026-01-24 16:59:19 +01:00

90 lines
2.0 KiB
Plaintext

{{/* .common
type CommonReihenData struct {
Years []int
Places []*dbmodels.Place
Letters []string
Agents []*dbmodels.Agent
}
.result
type SeriesListResult struct {
Series []*dbmodels.Series
Entries map[string]*dbmodels.Entry // <-- Key is Entry.ID
EntriesSeries map[string][]*dbmodels.REntriesSeries // <-- Key is Series.ID
// Only on agent request
Agent *dbmodels.Agent
EntriesAgents map[string][]*dbmodels.REntriesAgents // <-- Key is Entry.ID
// Only on search request
IDSeries []*dbmodels.Series
AltSeries []*dbmodels.Series
// Only on place request
Place *dbmodels.Place
}
// Parameters:
.letter
.search
.hidden
pageHtml "reihen" "text"
imagePath "page.reihen.image"
.startpage
*/}}
{{ $model := . }}
{{ if .startpage }}
{{ template "hero" . }}
{{ end }}
<!-- INFO: 1. Container -->
<div x-data="{ search : '{{ $model.search }}' }" :class="search ? 'searchfilter' : ''">
<!-- INFO: 2. Header -->
<div id="pageheading" class="headingcontainer">
<h1 class="heading">Bände nach Reihentiteln</h1>
{{ template "notifier" $model }}
{{ if not (or .search .hidden) }}
<div class="mt-2">
{{ template "alphabet" $model }}
</div>
{{ else }}
<div class="mt-2 border-b w-full"></div>
{{ end }}
</div>
<!-- INFO: 2. Breite Anzeige -->
<div
class="{{ if or .search .hidden }}
container-normal
{{ else }}
container-oversize
{{ end }} mt-4">
{{ if not (or .search .hidden) }}
{{ template "filter" . }}
{{ end }}
<div
id="reihenresults"
hx-get="/reihen/results/{{- if $model.request.query -}}?{{- $model.request.query -}}{{- end -}}"
hx-trigger="load"
hx-target="this"
hx-swap="outerHTML"
hx-history="false"
hx-indicator="body">
<div id="searchcontent" class="font-serif">
<div class="flex justify-center text-sm text-stone-600">Reihen laden…</div>
</div>
</div>
<!-- INFO: Ende 2. Breite Anzeige -->
</div>
<!-- INFO: Ende 1. Container -->
</div>