{#- Price breakdown for booking emails. Mirrors groups/booking/_offer_summary.html.twig, but with inline styles: the email layout ships no table styling and no Tailwind. Context: booking, priceBreakdown, currency (set in AccommodationBookingService). -#} {% if priceBreakdown is not null and currency is not null %} {% set cell = 'padding: 4px 0; text-align: left; vertical-align: top;' %} {% set amount = 'padding: 4px 0; text-align: right; vertical-align: top; white-space: nowrap;' %} {% set note = 'display: block; font-size: 12px; color: #6b7280; margin: 0;' %}

Preise

{% if booking.minorsCount > 0 %} {% endif %} {% if booking.childrenCount > 0 %} {% endif %} {% if priceBreakdown.basePrice > 0 %} {% endif %} {% if priceBreakdown.additionalPersonsPrice > 0 %} {% endif %} {% if priceBreakdown.shortTermSurcharge > 0 %} {% endif %} {% if priceBreakdown.boardPrice > 0 %} {% endif %} {% if priceBreakdown.undersubscriptionSurcharge > 0 %} {% endif %} {% for service in priceBreakdown.serviceDetails %} {% if service.price > 0 %} {% endif %} {% endfor %} {% if priceBreakdown.runningCosts > 0 %} {% endif %} {% for discount in priceBreakdown.discounts %} {% endfor %} {% if priceBreakdown.discounts is not empty %} {% endif %}
Zeitraum {{ booking.dateFrom|date('d.m.Y') }} – {{ booking.dateTo|date('d.m.Y') }}, {{ booking.nights }} {{ booking.nights != 1 ? 'Nächte' : 'Nacht' }}
Anzahl Personen {{ booking.paxCount }}
davon Kinder (0–3 J.) {{ booking.minorsCount }}
davon Kinder (4–{{ booking.accommodation.maxAdolescentAge }} J.) {{ booking.childrenCount }}
Basispreis für {{ priceBreakdown.includedPax }} Pers. {{ (priceBreakdown.basePrice / 100)|format_currency(currency) }}
Aufpreis Personenzahl für {{ priceBreakdown.effectivePax - priceBreakdown.includedPax }} Pers. {{ (priceBreakdown.additionalPersonsPrice / 100)|format_currency(currency) }}
Aufpreis Kurzzeit {{ (priceBreakdown.shortTermSurcharge / 100)|format_currency(currency) }}
Verpflegung{% if booking.boardServiceLabel %} ({{ booking.boardServiceLabel }}){% endif %} {{ (priceBreakdown.boardPrice / 100)|format_currency(currency) }}
Verpflegungs-Aufschlag für Gruppen unter {{ priceBreakdown.undersubscriptionThreshold }} Pers. {{ (priceBreakdown.undersubscriptionSurcharge / 100)|format_currency(currency) }}
{{ service.label }} {{ (service.price / 100)|format_currency(currency) }}
Strom- und Abfallgebühren {{ (priceBreakdown.runningCosts / 100)|format_currency(currency) }}
Gesamtpreis zzgl. ortsabhängiger Gebühren {{ (priceBreakdown.total / 100)|format_currency(currency) }}
Rabatt {{ discount.label }} {{ discount.percent }} % – {{ (discount.amount / 100)|format_currency(currency) }}
Gesamtpreis nach Rabatt {{ (priceBreakdown.discountedTotal / 100)|format_currency(currency) }}
{% endif %}