a little styling on the /baende endpoint

This commit is contained in:
Simon Martens
2026-01-25 18:01:10 +01:00
parent 5d57042edb
commit e35f3b19d4
2 changed files with 40 additions and 16 deletions

View File

@@ -78,7 +78,7 @@
</tool-tip> </tool-tip>
</div> </div>
</div> </div>
<div class="grid grid-cols-1 lg:grid-cols-[1fr_18rem] gap-6 text-sm font-sans text-gray-700"> <div class="grid grid-cols-1 lg:grid-cols-[1fr_18rem] gap-6 text-base font-sans text-gray-700">
<div class="flex flex-col gap-3"> <div class="flex flex-col gap-3">
{{- if or $entry.TitleStmt $entry.SubtitleStmt $entry.VariantTitle $entry.ParallelTitle $entry.IncipitStmt -}} {{- if or $entry.TitleStmt $entry.SubtitleStmt $entry.VariantTitle $entry.ParallelTitle $entry.IncipitStmt -}}
<div> <div>
@@ -165,6 +165,12 @@
<div>{{ $entry.Comment }}</div> <div>{{ $entry.Comment }}</div>
</div> </div>
{{- end -}} {{- end -}}
{{- if ne $entry.Year 0 -}}
<div>
<div class="text-xs uppercase tracking-wide text-gray-500">Jahr</div>
<div>{{ $entry.Year }}</div>
</div>
{{- end -}}
{{- if $entry.Language -}} {{- if $entry.Language -}}
<div> <div>
<div class="text-xs uppercase tracking-wide text-gray-500">Sprachen</div> <div class="text-xs uppercase tracking-wide text-gray-500">Sprachen</div>
@@ -175,10 +181,19 @@
{{- end -}} {{- end -}}
{{- if or $entry.Extent $entry.Dimensions -}} {{- if or $entry.Extent $entry.Dimensions -}}
<div> <div>
<div class="text-xs uppercase tracking-wide text-gray-500">Umfang / Maße</div>
<div> <div>
{{- if $entry.Extent -}}<div><span class="font-semibold text-gray-500 block">Struktur</span>{{ $entry.Extent }}</div>{{- end -}} {{- if $entry.Extent -}}
{{- if $entry.Dimensions -}}<div><span class="font-semibold text-gray-500">Maße:</span> {{ $entry.Dimensions }}</div>{{- end -}} <div>
<div class="text-xs uppercase tracking-wide text-gray-500">Struktur</div>
<div>{{ $entry.Extent }}</div>
</div>
{{- end -}}
{{- if $entry.Dimensions -}}
<div>
<div class="text-xs uppercase tracking-wide text-gray-500">Maße</div>
<div>{{ $entry.Dimensions }}</div>
</div>
{{- end -}}
</div> </div>
</div> </div>
{{- end -}} {{- end -}}
@@ -188,12 +203,6 @@
<div>{{ $entry.References }}</div> <div>{{ $entry.References }}</div>
</div> </div>
{{- end -}} {{- end -}}
{{- if ne $entry.Year 0 -}}
<div>
<div class="text-xs uppercase tracking-wide text-gray-500">Jahr</div>
<div>{{ $entry.Year }}</div>
</div>
{{- end -}}
{{- if $result.Items -}} {{- if $result.Items -}}
<div> <div>
<div class="text-xs uppercase tracking-wide text-gray-500">Exemplare</div> <div class="text-xs uppercase tracking-wide text-gray-500">Exemplare</div>
@@ -236,4 +245,4 @@
</div> </div>
</td> </td>
</tr> </tr>
<script src="/assets/js/collapse.js"></script>

View File

@@ -1,7 +1,15 @@
{{ $model := . }} {{ $model := . }}
<div id="baenderesults" <div id="baenderesults"
x-data="{ hasMore: {{ if $model.has_more }}true{{ else }}false{{ end }}, offset: {{ if $model.next_offset }}{{ $model.next_offset }}{{ else }}0{{ end }}, loading: false }"> x-data="{
hasMore: {{ if $model.has_more }}true{{ else }}false{{ end }},
offset: {{ if $model.next_offset }}{{ $model.next_offset }}{{ else }}0{{ end }},
loading: false,
search: '{{ $model.search }}',
letter: '{{ $model.letter }}',
sortField: '{{ if $model.sort_field }}{{ $model.sort_field }}{{ else }}title{{ end }}',
sortOrder: '{{ if $model.sort_order }}{{ $model.sort_order }}{{ else }}asc{{ end }}'
}">
<div id="baende-count" class="text-lg font-semibold font-sans text-gray-600 whitespace-nowrap"> <div id="baende-count" class="text-lg font-semibold font-sans text-gray-600 whitespace-nowrap">
{{ if $model.current_count }}{{ $model.current_count }}&thinsp;/&thinsp;{{ end }}{{ if $model.total_count }}{{ $model.total_count }}{{ else }}{{ len $model.result.Entries }}{{ end }} Bände {{ if $model.current_count }}{{ $model.current_count }}&thinsp;/&thinsp;{{ end }}{{ if $model.total_count }}{{ $model.total_count }}{{ else }}{{ len $model.result.Entries }}{{ end }} Bände
@@ -14,13 +22,20 @@
<button <button
type="button" type="button"
class="content-action-button" class="content-action-button"
hx-get="/baende/more/?offset={{ if $model.next_offset }}{{ $model.next_offset }}{{ else }}0{{ end }}{{ if $model.search }}&search={{ $model.search }}{{ end }}{{ if $model.letter }}&letter={{ $model.letter }}{{ end }}&sort={{ $model.sort_field }}&order={{ $model.sort_order }}" :hx-get="`/baende/more/?offset=${offset}&search=${search}&letter=${letter}&sort=${sortField}&order=${sortOrder}`"
hx-replace-url="true"
hx-target="#baende-tbody" hx-target="#baende-tbody"
hx-swap="beforeend" hx-swap="beforeend"
hx-indicator="this" hx-indicator="this"
> @htmx:before-request="loading = true"
<i class="ri-arrow-down-line"></i> @htmx:after-request="
<span>Weitere 150 laden</span> loading = false;
hasMore = $event.detail.xhr.getResponseHeader('X-Has-More') === 'true';
offset = parseInt($event.detail.xhr.getResponseHeader('X-Next-Offset') || '0');
"
:disabled="loading">
<i class="ri-arrow-down-line" :class="{ 'spinning': loading }"></i>
<span x-text="loading ? 'Lädt...' : 'Weitere 150 laden'"></span>
</button> </button>
</div> </div>