2026-05-18 16:27:47 +02:00
|
|
|
{{ define "main" }}
|
2026-05-18 17:09:39 +02:00
|
|
|
{{- $issue := index (.Params.issues | default (slice "01")) 0 }}
|
|
|
|
|
{{- $issueURL := printf "/issues/%s/" $issue }}
|
2026-05-18 16:27:47 +02:00
|
|
|
<section class="hero" id="hero">
|
2026-05-18 17:09:39 +02:00
|
|
|
<div class="hero__eyebrow">
|
|
|
|
|
№ {{ $issue }} · {{ index (.Params.categories | default (slice "Plate")) 0 }}
|
|
|
|
|
</div>
|
2026-05-18 16:27:47 +02:00
|
|
|
<h1 class="hero__title"><em>{{ .Title }}</em></h1>
|
2026-05-18 17:09:39 +02:00
|
|
|
<p class="hero__lede">
|
|
|
|
|
{{ .Params.description }}
|
|
|
|
|
<a href="{{ $issueURL }}" style="border-bottom:1px solid currentColor">Return to issue →</a>
|
|
|
|
|
</p>
|
2026-05-18 16:27:47 +02:00
|
|
|
</section>
|
|
|
|
|
|
|
|
|
|
<section class="grid" id="grid" data-density="default">
|
2026-05-18 17:09:39 +02:00
|
|
|
{{- $termPage := $.Site.GetPage (printf "/issues/%s" $issue) }}
|
|
|
|
|
{{- $posts := cond (ne $termPage nil) $termPage.Pages .Site.RegularPages }}
|
2026-05-18 16:27:47 +02:00
|
|
|
{{- range $i, $p := $posts }}
|
|
|
|
|
{{- $img := $p.Resources.GetMatch "*.png" }}
|
|
|
|
|
<a class="card"
|
|
|
|
|
href="{{ $p.RelPermalink }}"
|
|
|
|
|
style="--d:{{ mul (math.Min $i 18) 24 }}ms"
|
|
|
|
|
data-id="{{ $p.Params.plate }}"
|
|
|
|
|
data-slug="{{ $p.Params.slug }}">
|
|
|
|
|
<div class="card__frame">
|
|
|
|
|
{{- if $img }}
|
|
|
|
|
{{- $w := $img.Resize "600x900 webp" }}
|
|
|
|
|
<picture>
|
|
|
|
|
<source srcset="{{ $w.RelPermalink }}" type="image/webp" />
|
|
|
|
|
<img class="card__img"
|
|
|
|
|
loading="{{ if lt $i 8 }}eager{{ else }}lazy{{ end }}"
|
|
|
|
|
src="{{ $w.RelPermalink }}"
|
|
|
|
|
alt="{{ $p.Title }}" />
|
|
|
|
|
</picture>
|
|
|
|
|
{{- end }}
|
|
|
|
|
<span class="card__num">PLATE №{{ $p.Params.plate }}</span>
|
|
|
|
|
<span class="card__cat">{{ index ($p.Params.categories | default (slice "")) 0 }}</span>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="card__meta">
|
|
|
|
|
<h2 class="card__title">{{ $p.Title }}</h2>
|
|
|
|
|
<div class="card__sub">
|
|
|
|
|
<span>{{ index ($p.Params.categories | default (slice "")) 0 }}</span>
|
|
|
|
|
</div>
|
|
|
|
|
<p class="card__desc">{{ $p.Params.description }}</p>
|
|
|
|
|
</div>
|
|
|
|
|
</a>
|
|
|
|
|
{{- end }}
|
|
|
|
|
</section>
|
|
|
|
|
|
|
|
|
|
{{/* Tell JS which slug to open in the lightbox */}}
|
|
|
|
|
<script>window.__ROUX_OPEN_SLUG = "{{ .Params.slug }}";</script>
|
|
|
|
|
{{ end }}
|