48 lines
2.1 KiB
Twig
48 lines
2.1 KiB
Twig
{% extends 'partials/base.html.twig' %}
|
|
|
|
{% block content %}
|
|
<h1 class="trips-heading">Past Trips</h1>
|
|
{% set trips = page.children.published()|sort((a, b) => a.date < b.date ? 1 : -1) %}
|
|
{% if trips|length == 0 %}
|
|
<p class="feed-empty">No trips yet.</p>
|
|
{% else %}
|
|
<div class="trips-list">
|
|
{% for trip in trips %}
|
|
{% set dailies_page = grav.pages.find(trip.route ~ '/dailies') %}
|
|
{% set stories_page = grav.pages.find(trip.route ~ '/stories') %}
|
|
{% set journal_count = dailies_page ? dailies_page.children.published()|length : 0 %}
|
|
{% set story_count = stories_page ? stories_page.children.published()|length : 0 %}
|
|
<a class="trip-card" href="{{ trip.url }}">
|
|
{% set cover = null %}
|
|
{% if trip.header.cover_image and trip.media[trip.header.cover_image] is defined %}
|
|
{% set cover = trip.media[trip.header.cover_image] %}
|
|
{% elseif dailies_page %}
|
|
{% set first_entry = dailies_page.children.published()|first %}
|
|
{% if first_entry and first_entry.media.images|length > 0 %}
|
|
{% set cover = first_entry.media.images|first %}
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if cover %}
|
|
<div class="trip-card-cover">
|
|
<img src="{{ cover.cropResize(720, 240).url }}" alt="{{ trip.title }}" loading="lazy">
|
|
</div>
|
|
{% endif %}
|
|
<div class="trip-card-title">{{ trip.title }}</div>
|
|
<div class="trip-card-meta">
|
|
{% if trip.header.date_start %}
|
|
<span class="trip-card-dates">
|
|
{{ trip.header.date_start|date('M Y') }}
|
|
{% if trip.header.date_end %} — {{ trip.header.date_end|date('M Y') }}{% else %} — Ongoing{% endif %}
|
|
</span>
|
|
{% endif %}
|
|
<span class="trip-card-counts">
|
|
{{ journal_count }} journal {{ journal_count == 1 ? 'entry' : 'entries' }}
|
|
{% if story_count > 0 %} · {{ story_count }} {{ story_count == 1 ? 'story' : 'stories' }}{% endif %}
|
|
</span>
|
|
</div>
|
|
</a>
|
|
{% endfor %}
|
|
</div>
|
|
{% endif %}
|
|
{% endblock %}
|