feat: basic themes for event sites

This commit is contained in:
Björn Fromme
2026-03-16 12:00:56 +01:00
parent c7a27f1dc7
commit ee84690cd9
28 changed files with 1158 additions and 157 deletions
+9 -1
View File
@@ -1,6 +1,14 @@
<div class="flex items-center justify-between">
<a href="https://www.ep-reisen.de" title="zur E&amp;P Website">
<img src="{{ asset('build/images/logo.svg') }}" alt="" class="h-10 my-2 w-auto">
{% if booking_theme() == 'sbw' %}
<img src="{{ asset('build/images/logo_sbw.svg') }}" alt="" class="h-10 my-2 w-auto">
{% elseif booking_theme() == 'ser' %}
<img src="{{ asset('build/images/logo_ser.svg') }}" alt="" class="h-10 my-2 w-auto">
{% elseif booking_theme() == 'snz' %}
<img src="{{ asset('build/images/logo_snz.svg') }}" alt="" class="h-10 my-2 w-auto">
{% else %}
<img src="{{ asset('build/images/logo_ep.svg') }}" alt="" class="h-10 my-2 w-auto">
{% endif %}
</a>
<div class="flex items-center space-x-2">
{% if is_granted('ROLE_USER') %}
@@ -1,6 +1,11 @@
<div id="loading-indicator"
class="invisible fixed top-0 left-0 inset-0 z-50 backdrop-blur-sm flex items-center justify-center transition-all duration-100">
<svg class="text-primary-light w-32 h-32 lg:w-48 lg:h-48" viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg" stroke="currentColor">
<svg class="{{ html_classes('w-32 h-32 lg:w-48 lg:h-48', {
'text-primary-light': booking_theme() == 'base',
'text-sbw-secondary': booking_theme() == 'sbw',
'text-snz-secondary': booking_theme() == 'snz',
'text-ser-secondary': booking_theme() == 'ser',
}) }}" viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg" stroke="currentColor">
<g fill="none" fill-rule="evenodd" stroke-width="2">
<circle cx="22" cy="22" r="1">
<animate attributeName="r"
+2 -2
View File
@@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{% block title %}MyE&P.next{% endblock %}</title>
<title>{% block title %}MyE&amp;P{% endblock %}</title>
{% block stylesheets %}
{{ encore_entry_link_tags('app') }}
{% endblock %}
@@ -11,7 +11,7 @@
{{ encore_entry_script_tags('app') }}
{% endblock %}
</head>
<body class="bg-white text-gray-700 font-sans antialiased" hx-boost="true">
<body class="bg-white text-gray-700 font-sans antialiased {{ booking_theme() }}" hx-boost="true">
{% block body %}{% endblock %}
</body>
</html>
+4 -1
View File
@@ -18,7 +18,10 @@
{% else %}
<span class="pagination-item__border">
<span class="{{ html_classes('pagination-item__inner', {
'bg-primary-light text-white': step == current_step,
'bg-primary-light text-white': step == current_step and booking_theme() == 'base',
'bg-sbw-primary text-white': step == current_step and booking_theme() == 'sbw',
'bg-snz-primary-dark text-white': step == current_step and booking_theme() == 'snz',
'bg-ser-primary text-white': step == current_step and booking_theme() == 'ser',
'bg-primary-bg text-gray-800': step != current_step
}) }}">
{{ step }}
@@ -18,7 +18,10 @@
<div class="py-4" id="participant-card-{{ index }}">
<div class="flex items-start space-x-4">
<div class="{{ html_classes('w-12 h-12 inline-flex flex-shrink-0 items-center justify-center rounded-full text-white font-bold', {
'bg-primary-dark': not showAsError,
'bg-primary-dark': not showAsError and booking_theme() == 'base',
'bg-sbw-primary': not showAsError and booking_theme() == 'sbw',
'bg-snz-primary-dark': not showAsError and booking_theme() == 'snz',
'bg-ser-primary': not showAsError and booking_theme() == 'ser',
'bg-red-500': showAsError,
'text-2xl': participantNumber < 100,
'text-xl': participantNumber >= 100,
@@ -146,7 +146,12 @@
{% import _self as macros %}
<div class="flex items-center gap-4 pb-4 mb-4 border-b border-primary-bg">
<div class="w-12 h-12 inline-flex flex-shrink-0 items-center justify-center rounded-full bg-primary-dark text-white text-2xl font-bold">
<div class="{{ html_classes('w-12 h-12 inline-flex flex-shrink-0 items-center justify-center rounded-full text-white text-2xl font-bold', {
'bg-primary-dark': booking_theme() == 'base',
'bg-sbw-primary': booking_theme() == 'sbw',
'bg-snz-primary-dark': booking_theme() == 'snz',
'bg-ser-primary': booking_theme() == 'ser',
}) }}">
{{ participantIndex + 1 }}
</div>
<div class="text-2xl">