Anpassung Design
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
<section class="page-hero">
|
||||
<p class="eyebrow">Ablauf</p>
|
||||
<h1>Von der Anfrage bis zur Rückgabe klar geführt.</h1>
|
||||
<p>Die Seite ist so gebaut, dass Privatkunden und Firmenkunden denselben klaren Ablauf erleben.</p>
|
||||
</section>
|
||||
|
||||
<section class="section">
|
||||
<div class="content-card">
|
||||
<ol class="step-list large-step-list">
|
||||
<?php foreach ($processSteps as $index => $step): ?>
|
||||
<li>
|
||||
<span class="step-number"><?= h((string) ($index + 1)) ?></span>
|
||||
<div>
|
||||
<strong><?= h($step['title']) ?></strong>
|
||||
<p><?= h($step['text']) ?></p>
|
||||
</div>
|
||||
</li>
|
||||
<?php endforeach; ?>
|
||||
</ol>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="section split-section">
|
||||
<article class="content-card">
|
||||
<h2>Abholung und Rückgabe</h2>
|
||||
<ul class="check-list">
|
||||
<li><?= h($company['pickup_window']) ?></li>
|
||||
<li><?= h($company['return_window']) ?></li>
|
||||
<li>Lieferung und Aufbau können im Anfrageprozess gewählt werden.</li>
|
||||
<li>Der Mietzeitraum wird immer über Übernachtungen berechnet.</li>
|
||||
</ul>
|
||||
</article>
|
||||
<article class="content-card">
|
||||
<h2>Verwaltung im Hintergrund</h2>
|
||||
<ul class="check-list">
|
||||
<li>Anfragen werden im Backend geprüft und bestätigt.</li>
|
||||
<li>Für bestätigte Aufträge können Rechnungen mit Kundendaten erstellt werden.</li>
|
||||
<li>Zahlungsstatus und interne Notizen bleiben jederzeit nachvollziehbar.</li>
|
||||
</ul>
|
||||
</article>
|
||||
</section>
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
<section class="page-hero">
|
||||
<p class="eyebrow">Buchungsanfrage</p>
|
||||
<h1>Fotobox jetzt anfragen.</h1>
|
||||
<p>
|
||||
Wählen Sie Ihren Zeitraum, legen Sie Leistungsart und Zahlungsart fest und senden Sie Ihre Anfrage direkt an die Verwaltung.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section class="section split-section">
|
||||
<article class="content-card emphasis-card">
|
||||
<p class="eyebrow">Vor dem Absenden</p>
|
||||
<h2>Was wir für eine saubere Bearbeitung brauchen</h2>
|
||||
<ul class="check-list">
|
||||
<?php foreach ($bookingChecklist as $item): ?>
|
||||
<li><?= h($item) ?></li>
|
||||
<?php endforeach; ?>
|
||||
</ul>
|
||||
<div class="contact-card">
|
||||
<strong>Rückfragen</strong>
|
||||
<a href="mailto:<?= h($company['email']) ?>"><?= h($company['email']) ?></a>
|
||||
<a href="tel:<?= h($company['phone']) ?>"><?= h($company['phone']) ?></a>
|
||||
</div>
|
||||
</article>
|
||||
<article class="content-card booking-card">
|
||||
<?php require dirname(__DIR__) . '/partials/public-booking-form.php'; ?>
|
||||
</article>
|
||||
</section>
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
<section class="page-hero">
|
||||
<p class="eyebrow">Datenschutz</p>
|
||||
<h1>Datenschutzerklärung</h1>
|
||||
<p>Die Hinweise bilden den aktuellen Funktionsumfang dieser Website ab. Vor dem Produktivstart sollten sie rechtlich geprüft und mit Ihren echten Unternehmensdaten ergänzt werden.</p>
|
||||
</section>
|
||||
|
||||
<section class="section legal-section">
|
||||
<article class="legal-card">
|
||||
<h2>1. Verantwortlicher</h2>
|
||||
<p><?= h($company['name']) ?></p>
|
||||
<p><?= h($company['address']['street']) ?>, <?= h($company['address']['postal_code'] . ' ' . $company['address']['city']) ?></p>
|
||||
<p>E-Mail: <a href="mailto:<?= h($company['email']) ?>"><?= h($company['email']) ?></a></p>
|
||||
<p><?= h($company['legal']['privacy_contact']) ?></p>
|
||||
</article>
|
||||
|
||||
<article class="legal-card">
|
||||
<h2>2. Zweck der Datenverarbeitung</h2>
|
||||
<p>Wir verarbeiten die im Buchungsformular eingegebenen Daten, um Ihre Anfrage zu prüfen, mit Ihnen Kontakt aufzunehmen, eine mögliche Buchung zu verwalten und bei Bedarf eine Rechnung zu erstellen.</p>
|
||||
<p>Dazu gehören insbesondere Name, Kontaktdaten, Rechnungsadresse, Veranstaltungsort, gewünschter Zeitraum, gewählte Leistungsart und Zahlungsart.</p>
|
||||
</article>
|
||||
|
||||
<article class="legal-card">
|
||||
<h2>3. Speicherdauer</h2>
|
||||
<p>Wir speichern Anfragen und daraus entstehende Buchungen nur so lange, wie es für die Bearbeitung, Vertragserfüllung, Nachweise und gesetzliche Aufbewahrungspflichten erforderlich ist.</p>
|
||||
</article>
|
||||
|
||||
<article class="legal-card">
|
||||
<h2>4. Ihre Rechte</h2>
|
||||
<p>Sie haben das Recht auf Auskunft, Berichtigung, Löschung, Einschränkung der Verarbeitung sowie auf Widerspruch und Datenübertragbarkeit, soweit die gesetzlichen Voraussetzungen vorliegen.</p>
|
||||
</article>
|
||||
<article class="legal-card">
|
||||
<h2>5. Technische Hinweise</h2>
|
||||
<p>Diese Website verarbeitet Formulardaten serverseitig. Tracking- oder Drittanbieter-Dienste sind im aktuellen Stand nicht eingebunden. Sollten später Analyse- oder Zahlungsdienste ergänzt werden, muss diese Erklärung entsprechend erweitert werden.</p>
|
||||
</article>
|
||||
</section>
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
<section class="page-hero">
|
||||
<p class="eyebrow">FAQ</p>
|
||||
<h1>Häufige Fragen vor der Anfrage.</h1>
|
||||
<p>Hier finden Sie die Punkte, die in Vermietung, Zahlung und Rückgabe am häufigsten geklärt werden müssen.</p>
|
||||
</section>
|
||||
|
||||
<section class="section">
|
||||
<div class="faq-grid">
|
||||
<?php foreach ($faqItems as $item): ?>
|
||||
<article class="faq-card">
|
||||
<h2><?= h($item['question']) ?></h2>
|
||||
<p><?= h($item['answer']) ?></p>
|
||||
</article>
|
||||
<?php endforeach; ?>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
<section class="page-hero">
|
||||
<p class="eyebrow">Impressum</p>
|
||||
<h1>Anbieterkennzeichnung</h1>
|
||||
<p>Bitte prüfen Sie die Angaben vor einem Live-Betrieb und ergänzen Sie fehlende Unternehmensdaten bei Bedarf.</p>
|
||||
</section>
|
||||
|
||||
<section class="section legal-section">
|
||||
<article class="legal-card">
|
||||
<h2>Angaben gemäß § 5 DDG</h2>
|
||||
<p><?= h($company['legal']['owner']) ?></p>
|
||||
<p><?= h($company['address']['street']) ?></p>
|
||||
<p><?= h($company['address']['postal_code'] . ' ' . $company['address']['city']) ?></p>
|
||||
<p>E-Mail: <a href="mailto:<?= h($company['email']) ?>"><?= h($company['email']) ?></a></p>
|
||||
<p>Telefon: <a href="tel:<?= h($company['phone']) ?>"><?= h($company['phone']) ?></a></p>
|
||||
<p>Website: <a href="<?= h($company['website']) ?>"><?= h($company['website']) ?></a></p>
|
||||
</article>
|
||||
|
||||
<article class="legal-card">
|
||||
<h2>Verantwortlich für den Inhalt</h2>
|
||||
<p><?= h($company['legal']['representative']) ?></p>
|
||||
<?php if ($company['legal']['vat_id'] !== ''): ?>
|
||||
<p>Umsatzsteuer-ID: <?= h($company['legal']['vat_id']) ?></p>
|
||||
<?php endif; ?>
|
||||
<?php if ($company['legal']['register_court'] !== '' || $company['legal']['register_number'] !== ''): ?>
|
||||
<p>Registergericht: <?= h($company['legal']['register_court']) ?></p>
|
||||
<p>Registernummer: <?= h($company['legal']['register_number']) ?></p>
|
||||
<?php endif; ?>
|
||||
<p><?= h($company['legal']['dispute_notice']) ?></p>
|
||||
</article>
|
||||
</section>
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
<section class="page-hero">
|
||||
<p class="eyebrow">Kontakt</p>
|
||||
<h1>Direkt erreichbar für Fragen zu Termin, Lieferung und Rechnung.</h1>
|
||||
<p>Wenn Sie vor der Anfrage noch etwas abstimmen möchten, erreichen Sie uns über die folgenden Kontaktwege.</p>
|
||||
</section>
|
||||
|
||||
<section class="section split-section">
|
||||
<article class="content-card">
|
||||
<h2>Kontaktmöglichkeiten</h2>
|
||||
<div class="contact-card">
|
||||
<strong><?= h($company['name']) ?></strong>
|
||||
<a href="mailto:<?= h($company['email']) ?>"><?= h($company['email']) ?></a>
|
||||
<a href="tel:<?= h($company['phone']) ?>"><?= h($company['phone']) ?></a>
|
||||
<span><?= h($company['address']['street']) ?></span>
|
||||
<span><?= h($company['address']['postal_code'] . ' ' . $company['address']['city']) ?></span>
|
||||
</div>
|
||||
</article>
|
||||
<article class="content-card emphasis-card">
|
||||
<h2>Was wir schnell beantworten können</h2>
|
||||
<ul class="check-list">
|
||||
<li>Prüfung von Wunschterminen</li>
|
||||
<li>Lieferung, Aufbau und regionale Einsatzorte</li>
|
||||
<li>Fragen zu Rechnung, Zahlungsart und Mietdauer</li>
|
||||
<li>Abstimmung von Firmenveranstaltungen und Sonderfällen</li>
|
||||
</ul>
|
||||
<a class="button-primary" href="<?= h(url('buchen')) ?>">Zur Buchungsanfrage</a>
|
||||
</article>
|
||||
</section>
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
<section class="page-hero">
|
||||
<p class="eyebrow">Leistungen & Ausstattung</p>
|
||||
<h1>Eine Fotobox, die technisch überzeugt und organisatorisch mitdenkt.</h1>
|
||||
<p>
|
||||
Diese Seite zeigt nicht nur die Technik, sondern den gesamten Service:
|
||||
Bildqualität, Bedienbarkeit, Logistik, digitale Übergabe und die kaufmännische Abwicklung.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section class="section">
|
||||
<div class="feature-card-grid">
|
||||
<?php foreach ($featureCards as $card): ?>
|
||||
<article class="feature-card">
|
||||
<h2><?= h($card['title']) ?></h2>
|
||||
<p><?= h($card['text']) ?></p>
|
||||
</article>
|
||||
<?php endforeach; ?>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="section split-section">
|
||||
<?php foreach ($serviceModules as $module): ?>
|
||||
<article class="content-card">
|
||||
<h2><?= h($module['title']) ?></h2>
|
||||
<ul class="check-list">
|
||||
<?php foreach ($module['items'] as $item): ?>
|
||||
<li><?= h($item) ?></li>
|
||||
<?php endforeach; ?>
|
||||
</ul>
|
||||
</article>
|
||||
<?php endforeach; ?>
|
||||
</section>
|
||||
|
||||
<section class="section cta-band">
|
||||
<div>
|
||||
<p class="eyebrow">Buchung</p>
|
||||
<h2>Sie wissen schon, was Sie brauchen?</h2>
|
||||
<p>Dann prüfen Sie direkt Ihren Zeitraum und senden Sie Ihre Anfrage digital.</p>
|
||||
</div>
|
||||
<a class="button-primary" href="<?= h(url('buchen')) ?>">Jetzt anfragen</a>
|
||||
</section>
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
<section class="page-hero">
|
||||
<p class="eyebrow">Mietbedingungen</p>
|
||||
<h1>Rahmenbedingungen für Anfrage, Bestätigung und Rückgabe.</h1>
|
||||
<p>Die Bedingungen sind als solide Grundlage für die Website angelegt und sollten vor einem verbindlichen Live-Betrieb fachlich geprüft werden.</p>
|
||||
</section>
|
||||
|
||||
<section class="section legal-section">
|
||||
<article class="legal-card">
|
||||
<h2>1. Anfrage und Bestätigung</h2>
|
||||
<p>Die Online-Eingabe stellt zunächst eine Buchungsanfrage dar. Ein Vertrag kommt erst zustande, wenn die Anfrage von uns bestätigt wird.</p>
|
||||
</article>
|
||||
<article class="legal-card">
|
||||
<h2>2. Mietdauer</h2>
|
||||
<p>Ein Miettag entspricht einer Übernachtung. Montag bis Dienstag zählt als 1 Miettag. Die Rückgabe muss nach dem Abholdatum liegen.</p>
|
||||
</article>
|
||||
<article class="legal-card">
|
||||
<h2>3. Zahlung</h2>
|
||||
<p>Zahlungen sind per Rechnung / Überweisung oder per PayPal möglich. Die gewählte Zahlungsart wird bei der Anfrage erfasst und kann im Verwaltungsprozess hinterlegt werden.</p>
|
||||
</article>
|
||||
<article class="legal-card">
|
||||
<h2>4. Übergabe und Rückgabe</h2>
|
||||
<p><?= h($company['pickup_window']) ?>. <?= h($company['return_window']) ?>. Abweichungen und Zusatzleistungen werden individuell vereinbart.</p>
|
||||
</article>
|
||||
<article class="legal-card">
|
||||
<h2>5. Schäden und Ausfälle</h2>
|
||||
<p>Bitte melden Sie Störungen oder Schäden unverzüglich. Für einen verbindlichen gewerblichen Einsatz sollten Haftungs- und Ausfallregelungen vor dem Live-Start individuell ergänzt werden.</p>
|
||||
</article>
|
||||
</section>
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
<section class="page-hero">
|
||||
<p class="eyebrow">404</p>
|
||||
<h1>Diese Seite wurde nicht gefunden.</h1>
|
||||
<p>Bitte wechseln Sie zurück zur Startseite oder direkt zur Buchungsanfrage.</p>
|
||||
<div class="hero-actions">
|
||||
<a class="button-primary" href="<?= h(url('/')) ?>">Zur Startseite</a>
|
||||
<a class="button-secondary" href="<?= h(url('buchen')) ?>">Zur Anfrage</a>
|
||||
</div>
|
||||
</section>
|
||||
@@ -0,0 +1,59 @@
|
||||
<section class="page-hero">
|
||||
<p class="eyebrow">Preise & Mietlogik</p>
|
||||
<h1>Klare Preise ohne versteckte Logik.</h1>
|
||||
<p>
|
||||
Der Standardpreis beträgt <strong><?= h(formatCurrency((int) $dayRate)) ?></strong> pro Miettag.
|
||||
Ein Miettag entspricht immer einer Übernachtung.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section class="section split-section">
|
||||
<article class="content-card emphasis-card">
|
||||
<p class="eyebrow">Grundpreis</p>
|
||||
<h2><?= h(formatCurrency((int) $dayRate)) ?> pro Miettag</h2>
|
||||
<p>Montag bis Dienstag = 1 Miettag. Freitag bis Sonntag = 2 Miettage.</p>
|
||||
<ul class="check-list">
|
||||
<li>Technikpaket mit DSLR-Kamera, Blitz und Softbox</li>
|
||||
<li>Digitale Bildübergabe inklusive</li>
|
||||
<li>Zahlung per Rechnung, Überweisung oder PayPal</li>
|
||||
<li>Verbindlichkeit erst nach Bestätigung Ihrer Anfrage</li>
|
||||
</ul>
|
||||
</article>
|
||||
<article class="content-card">
|
||||
<p class="eyebrow">Preisbeispiele</p>
|
||||
<div class="pricing-example-list">
|
||||
<?php foreach ($pricingExamples as $example): ?>
|
||||
<article>
|
||||
<strong><?= h($example['title']) ?></strong>
|
||||
<span><?= h($example['text']) ?></span>
|
||||
</article>
|
||||
<?php endforeach; ?>
|
||||
</div>
|
||||
<p class="small-note">
|
||||
Lieferung, Aufbau oder Vor-Ort-Betreuung werden im Anfrageprozess passend zum Anlass abgestimmt.
|
||||
</p>
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<section class="section">
|
||||
<div class="section-heading">
|
||||
<p class="eyebrow">Zahlung</p>
|
||||
<h2>Rechnung, Überweisung oder PayPal</h2>
|
||||
<p>Die gewünschte Zahlungsart wird bereits in der Anfrage hinterlegt und kann im Backend verwaltet werden.</p>
|
||||
</div>
|
||||
<div class="trust-grid">
|
||||
<article class="trust-card">
|
||||
<span>Überweisung</span>
|
||||
<strong>Rechnung mit Kundendaten</strong>
|
||||
</article>
|
||||
<article class="trust-card">
|
||||
<span>PayPal</span>
|
||||
<strong>Als Zahlungsart auswählbar</strong>
|
||||
</article>
|
||||
<article class="trust-card">
|
||||
<span>Steuerhinweis</span>
|
||||
<strong><?= h($company['tax_notice']) ?></strong>
|
||||
</article>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
<section class="page-hero">
|
||||
<p class="eyebrow">Verfügbarkeit</p>
|
||||
<h1>Geblockte und bereits bestätigte Zeiträume im Blick.</h1>
|
||||
<p>
|
||||
Die Übersicht zeigt aktuelle Belegungen aus dem Verwaltungssystem.
|
||||
Für Ihren Wunschtermin senden Sie am besten direkt eine Anfrage.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section class="section split-section">
|
||||
<article class="content-card">
|
||||
<h2>Aktuelle Belegung</h2>
|
||||
<div class="availability-list">
|
||||
<?php if ($bookings === []): ?>
|
||||
<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): ?>
|
||||
<article class="availability-card">
|
||||
<div>
|
||||
<strong><?= h($booking['reference']) ?></strong>
|
||||
<span><?= h(formatDate($booking['start_date'])) ?> bis <?= h(formatDate($booking['end_date'])) ?></span>
|
||||
</div>
|
||||
<span class="<?= h(statusPillClass((string) $booking['status'])) ?>"><?= h($booking['status_label']) ?></span>
|
||||
</article>
|
||||
<?php endforeach; ?>
|
||||
</div>
|
||||
</article>
|
||||
<article class="content-card emphasis-card">
|
||||
<h2>Direkt zur Anfrage</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>
|
||||
</ul>
|
||||
<a class="button-primary button-block" href="<?= h(url('buchen')) ?>">Jetzt Termin anfragen</a>
|
||||
</article>
|
||||
</section>
|
||||
|
||||
Reference in New Issue
Block a user