Adiciona ICS à pagina dos eventos e muda um bocado a paginação

This commit is contained in:
Hugo Peixoto 2024-01-01 15:59:04 +00:00
parent 1e01d9909a
commit bb9fa6172d
2 changed files with 41 additions and 18 deletions

View File

@ -1,27 +1,47 @@
{{- define "main" -}}
<h1 class='events-list-title body-width'>Próximos eventos</h2>
{{ $past_events := where site.RegularPages "Type" "eventos" }}
{{ $past_events = where $past_events "Params.metadata.event.date.finish" "<" (now.Format "2006-01-02") }}
{{ $past_events = sort $past_events "Params.metadata.event.date.start" "desc" }}
{{ $past_events_paginator := .Paginate $past_events }}
{{ $query := where site.RegularPages "Type" "eventos" }}
{{ $query = where $query "Params.metadata.event.date.finish" ">=" (now.Format "2006-01-02") }}
{{ $query = sort $query "Params.metadata.event.date.start" }}
{{ $future_events := where site.RegularPages "Type" "eventos" }}
{{ $future_events = where $future_events "Params.metadata.event.date.finish" ">=" (now.Format "2006-01-02") }}
{{ $future_events = sort $future_events "Params.metadata.event.date.start" }}
{{ if not $past_events_paginator.HasPrev }}
<h1 class='events-list-title body-width'>Próximos eventos</h2>
<div class='body-width'>
<a href="webcal://localhost:1313/eventos/index.ics">
Subscrever ao calendário (ICS)
</a>
</div>
<ul class="events-list body-width">
{{ range $future_events }}
<li>{{ partial "evento" . }}</li>
{{ end }}
</ul>
{{ end }}
<h1 class='events-list-title body-width'>Eventos passados</h2>
<ul class="events-list body-width">
{{ range $query }}
{{ range $past_events_paginator.Pages }}
<li>{{ partial "evento" . }}</li>
{{ end }}
</ul>
<h1 class='events-list-title body-width'>Eventos antigos</h2>
<ul class="events-list body-width">
{{ $query := where site.RegularPages "Type" "eventos" }}
{{ $query = where $query "Params.metadata.event.date.finish" "<" (now.Format "2006-01-02") }}
{{ $query = sort $query "Params.metadata.event.date.start" "desc" }}
{{ $paginator := .Paginate $query }}
{{ range $paginator.Pages }}
<li>{{ partial "evento" . }}</li>
{{ end }}
</ul>
{{ partial "pagination" . }}
{{ if or ($past_events_paginator.HasPrev) ($past_events_paginator.HasNext) }}
<nav class='body-width'>
<ul class="pagination justify-content-center">
{{ if $past_events_paginator.HasPrev }}
<li class="page-item"><a class="page-link" href="{{ $past_events_paginator.Prev.URL }}">Eventos mais recentes</a></li>
{{ end }}
{{ if $past_events_paginator.HasNext }}
<li class="page-item"><a class="page-link" href="{{ $past_events_paginator.Next.URL }}">Eventos mais antigos</a></li>
{{ end }}
</ul>
</nav>
{{ end }}
{{- end -}}

View File

@ -1,6 +1,9 @@
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//ansol-org//eventos//PT
URL:https://ansol.org/eventos/
NAME:ANSOL - Eventos
X-WR-CALNAME:ANSOL - Eventos
CALSCALE:GREGORIAN
METHOD:PUBLISH
{{range .Pages -}}