Buchungskalender eingefügt
This commit is contained in:
@@ -1,27 +1,91 @@
|
||||
<section class="page-hero">
|
||||
<p class="eyebrow">Verfügbarkeit</p>
|
||||
<h1>Geblockte und bereits bestätigte Zeiträume im Blick.</h1>
|
||||
<h1>Prüfen Sie, ob Ihr Wunschtermin noch frei ist.</h1>
|
||||
<p>
|
||||
Die Übersicht zeigt aktuelle Belegungen aus dem Verwaltungssystem.
|
||||
Für Ihren Wunschtermin senden Sie am besten direkt eine Anfrage.
|
||||
Hier sehen Sie bereits belegte Termine im Monatskalender.
|
||||
Ist Ihr Wunschtermin noch frei, senden Sie uns direkt Ihre unverbindliche Anfrage.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section class="section">
|
||||
<div class="section-heading">
|
||||
<p class="eyebrow">Buchungskalender</p>
|
||||
<h2>Belegte Termine auf einen Blick</h2>
|
||||
<p>Die Kalenderansicht zeigt angefragte, reservierte und bestätigte Zeiträume für die nächsten Monate.</p>
|
||||
</div>
|
||||
<div class="calendar-legend" aria-label="Legende zur Verfügbarkeit">
|
||||
<span class="status-pill status-requested">Anfrage</span>
|
||||
<span class="status-pill status-reserved">Reserviert</span>
|
||||
<span class="status-pill status-confirmed">Bestätigt</span>
|
||||
</div>
|
||||
<div class="public-calendar-grid">
|
||||
<?php foreach ($availabilityCalendarMonths as $month): ?>
|
||||
<article class="calendar-month-card">
|
||||
<div class="calendar-month-header">
|
||||
<h2><?= h($month['label']) ?></h2>
|
||||
<span><?= h((string) $month['entry_count']) ?> Termine</span>
|
||||
</div>
|
||||
<div class="calendar-weekdays" aria-hidden="true">
|
||||
<span>Mo</span>
|
||||
<span>Di</span>
|
||||
<span>Mi</span>
|
||||
<span>Do</span>
|
||||
<span>Fr</span>
|
||||
<span>Sa</span>
|
||||
<span>So</span>
|
||||
</div>
|
||||
<div class="calendar-days">
|
||||
<?php foreach ($month['days'] as $day): ?>
|
||||
<?php if (!empty($day['is_padding'])): ?>
|
||||
<div class="calendar-day calendar-day-empty" aria-hidden="true"></div>
|
||||
<?php else: ?>
|
||||
<div class="calendar-day<?= !empty($day['is_booked']) ? ' is-booked calendar-day-' . h((string) $day['status']) : '' ?><?= !empty($day['is_today']) ? ' is-today' : '' ?>">
|
||||
<span class="calendar-day-number"><?= h((string) $day['day']) ?></span>
|
||||
<?php if (!empty($day['is_booked'])): ?>
|
||||
<span class="calendar-day-state"><?= h((string) $day['status_label']) ?></span>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
<?php endforeach; ?>
|
||||
</div>
|
||||
<div class="calendar-entry-list">
|
||||
<?php if ($month['entries'] === []): ?>
|
||||
<article class="calendar-entry">
|
||||
<strong>Derzeit kein belegter Zeitraum.</strong>
|
||||
<span>Dieser Monat ist aktuell noch frei.</span>
|
||||
</article>
|
||||
<?php else: ?>
|
||||
<?php foreach ($month['entries'] as $entry): ?>
|
||||
<article class="calendar-entry">
|
||||
<div>
|
||||
<strong><?= h($entry['date_label']) ?></strong>
|
||||
<span><?= h($entry['delivery_label']) ?> · <?= h($entry['day_count_label']) ?></span>
|
||||
</div>
|
||||
<span class="<?= h(statusPillClass((string) $entry['status'])) ?>"><?= h($entry['status_label']) ?></span>
|
||||
</article>
|
||||
<?php endforeach; ?>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</article>
|
||||
<?php endforeach; ?>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="section split-section">
|
||||
<article class="content-card">
|
||||
<h2>Aktuelle Belegung</h2>
|
||||
<div class="availability-list">
|
||||
<?php if ($bookings === []): ?>
|
||||
<?php if ($availabilityBookings === []): ?>
|
||||
<article class="availability-card">
|
||||
<strong>Momentan gibt es keine festen Einträge.</strong>
|
||||
<span>Ihre Anfrage kann direkt neu aufgenommen werden.</span>
|
||||
</article>
|
||||
<?php endif; ?>
|
||||
<?php foreach ($bookings as $booking): ?>
|
||||
<?php foreach ($availabilityBookings as $booking): ?>
|
||||
<article class="availability-card">
|
||||
<div>
|
||||
<strong><?= h($booking['reference']) ?></strong>
|
||||
<span><?= h(formatDate($booking['start_date'])) ?> bis <?= h(formatDate($booking['end_date'])) ?></span>
|
||||
<strong><?= h(formatDate($booking['start_date'])) ?> bis <?= h(formatDate($booking['end_date'])) ?></strong>
|
||||
<span><?= h((string) ($booking['delivery_zone_label'] ?: $booking['delivery_mode_label'])) ?> · <?= h((string) $booking['total_days']) ?> <?= $booking['total_days'] === 1 ? 'Miettag' : 'Miettage' ?></span>
|
||||
</div>
|
||||
<span class="<?= h(statusPillClass((string) $booking['status'])) ?>"><?= h($booking['status_label']) ?></span>
|
||||
</article>
|
||||
@@ -29,13 +93,18 @@
|
||||
</div>
|
||||
</article>
|
||||
<article class="content-card emphasis-card">
|
||||
<h2>Direkt zur Anfrage</h2>
|
||||
<h2>Jetzt unverbindlich anfragen</h2>
|
||||
<ul class="check-list">
|
||||
<li>Zeitraum nach Übernachtungen wählen</li>
|
||||
<li>Lieferart und Zahlungsart festlegen</li>
|
||||
<li>Kundendaten für Rechnung und Rückfragen erfassen</li>
|
||||
<li>Wunschtermin auswählen</li>
|
||||
<li>Leistungsart, Liefergebiet und Zahlungsart festlegen</li>
|
||||
<li>Kontaktdaten und Veranstaltungsort eintragen</li>
|
||||
</ul>
|
||||
<a class="button-primary button-block" href="<?= h(url('buchen')) ?>">Jetzt Termin anfragen</a>
|
||||
<p class="small-note">
|
||||
Selbstabholung: <?= h(formatCurrency((int) $config['pricing']['delivery_rates']['self_pickup']['price_cents'])) ?> ·
|
||||
Hannover: <?= h(formatCurrency((int) $config['pricing']['delivery_rates']['hannover']['price_cents'])) ?> ·
|
||||
Region Hannover: <?= h(formatCurrency((int) $config['pricing']['delivery_rates']['region_hannover']['price_cents'])) ?> ·
|
||||
Hameln, Braunschweig, Hildesheim oder Celle: <?= h(formatCurrency((int) $config['pricing']['delivery_rates']['extended_region']['price_cents'])) ?>
|
||||
</p>
|
||||
<a class="button-primary button-block" href="<?= h(url('buchen')) ?>">Wunschtermin anfragen</a>
|
||||
</article>
|
||||
</section>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user