56 lines
2.0 KiB
Twig
56 lines
2.0 KiB
Twig
{# Sign-in step of a purchase flow: the login form the booking and voucher flows share #}
|
|
<div>
|
|
<h2 class="text-white">
|
|
Mit bestehendem Account anmelden
|
|
</h2>
|
|
|
|
{% if error %}
|
|
{% include '_partials/_alert.html.twig' with { 'level': 'error', messages: [ error.messageKey|trans(error.messageData, 'security') ] } %}
|
|
{% endif %}
|
|
|
|
<form action="{{ path('app_login') }}" method="post" hx-history="false">
|
|
<div class="mb-4">
|
|
<label for="username" class="mb-1 font-semibold text-white">
|
|
E-Mail:
|
|
</label>
|
|
<input type="email"
|
|
id="username"
|
|
name="_username"
|
|
value="{{ last_username }}"
|
|
class="form-field"
|
|
required
|
|
autocomplete="username">
|
|
</div>
|
|
|
|
<div class="mb-4" {{ stimulus_controller('password-reveal') }}>
|
|
<label for="password" class="mb-1 font-semibold text-white">
|
|
Passwort:
|
|
</label>
|
|
<div class="relative">
|
|
<input type="password"
|
|
id="password"
|
|
name="_password"
|
|
class="form-field"
|
|
{{ stimulus_target('password-reveal', 'field') }}
|
|
required
|
|
autocomplete="current-password">
|
|
<button type="button"
|
|
{{ stimulus_action('password-reveal', 'toggle') }}
|
|
class="absolute top-0 right-0 mt-2 mr-2">
|
|
{{ icon('eye', 'w-6 h-6 text-gray-500') }}
|
|
</button>
|
|
</div>
|
|
</div>
|
|
|
|
<button type="submit" class="button button--primary w-full md:w-auto">
|
|
Anmelden und fortfahren
|
|
</button>
|
|
<input type="hidden" name="_csrf_token" value="{{ csrf_token('authenticate') }}">
|
|
</form>
|
|
|
|
<a href="{{ path('app_reset_password') }}"
|
|
class="inline-block text-sm underline text-white mt-2">
|
|
Passwort vergessen?
|
|
</a>
|
|
</div>
|