Files
pingu-concerts/app/templates/concert_detail.html
T

332 lines
9.2 KiB
HTML

<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta
name="viewport"
content="width=device-width, initial-scale=1.0"
>
<title>{{ concert.artist }} | Pingu Concerts</title>
<link
rel="stylesheet"
href="/static/style.css"
>
</head>
<body>
<div class="container">
<a href="/" class="back-link">
← Zurück zum Kalender
</a>
<article class="concert-detail">
{% if concert.flyer_path %}
<div class="flyer-container">
<img
src="{{ concert.flyer_path }}"
alt="Flyer {{ concert.artist }}"
class="concert-flyer"
>
</div>
{% endif %}
<div class="concert-content">
<h1>
{{ concert.artist }}
</h1>
<div class="concert-info">
<div class="info-item">
<span class="info-icon">
📅
</span>
<div>
<strong>
{{ concert.date }}
</strong>
<br>
{{ concert.time }} Uhr
</div>
</div>
<div class="info-item">
<span class="info-icon">
📍
</span>
<div>
<strong>
{{ concert.venue.name }}
</strong>
{% if concert.venue.street %}
<br>
{{ concert.venue.street }}
{% endif %}
{% if concert.venue.postal_code
or concert.venue.city %}
<br>
{{ concert.venue.postal_code }}
{{ concert.venue.city }}
{% endif %}
</div>
</div>
{% if concert.ticket_price %}
<div class="info-item">
<span class="info-icon">
🎟️
</span>
<div>
<strong>
Ticket
</strong>
<br>
{{ concert.ticket_price }} €
</div>
</div>
{% endif %}
</div>
{% if concert.description %}
<section class="description">
<h2>
Über das Konzert
</h2>
<p>
{{ concert.description }}
</p>
</section>
{% endif %}
{% if concert.ticket_url %}
<div class="ticket-button-container">
<a
href="{{ concert.ticket_url }}"
target="_blank"
rel="noopener noreferrer"
class="ticket-button"
>
🎟️ Tickets
</a>
</div>
{% endif %}
{% if can_edit %}
<div class="detail-actions" aria-label="Konzert verwalten">
<a href="/concerts/{{ concert.id }}/edit" class="concert-action concert-action-edit">
✏️ Konzert bearbeiten
</a>
{% if user.is_admin and can_delete %}
<form
method="post"
action="/concerts/{{ concert.id }}/delete"
onsubmit="return confirm('Dieses Konzert wirklich löschen?');"
>
<button type="submit" class="concert-action concert-action-delete">
🗑️ Konzert löschen
</button>
</form>
{% endif %}
</div>
{% endif %}
<section class="attendance-section" id="attendance">
<h2>
🐧 Wer ist dabei?
</h2>
<p>Wähle, wie es bei dir aussieht. Deine Auswahl kann jederzeit geändert werden.</p>
<div class="attendance-actions">
<form method="post" action="/concerts/{{ concert.id }}/attendance">
<input type="hidden" name="status" value="attending">
<button
type="submit"
class="attendance-option {% if current_attendance == 'attending' %}is-selected{% endif %}"
>
✓ Zugesagt
</button>
</form>
<form method="post" action="/concerts/{{ concert.id }}/attendance">
<input type="hidden" name="status" value="maybe">
<button
type="submit"
class="attendance-option {% if current_attendance == 'maybe' %}is-selected{% endif %}"
>
? Vielleicht
</button>
</form>
<form method="post" action="/concerts/{{ concert.id }}/attendance">
<input type="hidden" name="status" value="ticket_search">
<button
type="submit"
class="attendance-option {% if current_attendance == 'ticket_search' %}is-selected{% endif %}"
>
🎟️ Suche Ticket
</button>
</form>
</div>
<details class="attendance-list">
<summary>
{{ attending_count }} Zusage{% if attending_count != 1 %}n{% endif %}
· {{ ticket_seeker_count }} sucht Ticket
</summary>
<div class="attendance-groups">
<div>
<h3>✓ Zugesagt</h3>
{% if attending_users %}
<ul>
{% for attendee in attending_users %}
<li>{{ attendee.name }}</li>
{% endfor %}
</ul>
{% else %}
<p>Noch niemand hat zugesagt.</p>
{% endif %}
</div>
<div>
<h3>🎟️ Sucht ein Ticket</h3>
{% if ticket_seekers %}
<ul>
{% for seeker in ticket_seekers %}
<li>{{ seeker.name }}</li>
{% endfor %}
</ul>
{% else %}
<p>Aktuell sucht niemand ein Ticket.</p>
{% endif %}
</div>
</div>
</details>
</section>
<section class="comments-section" id="comments">
<h2>💬 Kommentare</h2>
<form method="post" action="/concerts/{{ concert.id }}/comments" class="comment-form">
<label for="comment-body">Mit anderen Konzertbesuchern austauschen</label>
<textarea
id="comment-body"
name="body"
rows="4"
maxlength="2000"
required
placeholder="Schreib einen Kommentar …"
></textarea>
<button type="submit" class="attendance-option comment-submit">
Kommentar senden
</button>
</form>
{% if comments %}
<div class="comment-list">
{% for comment in comments %}
<article class="comment">
<div class="comment-meta">
<strong>{{ comment.author }}</strong>
<span>{{ comment.created_at }}</span>
</div>
<p>{{ comment.body }}</p>
</article>
{% endfor %}
</div>
{% else %}
<p class="comments-empty">Noch keine Kommentare. Mach den Anfang!</p>
{% endif %}
</section>
</div>
</article>
</div>
</body>
</html>