travelynx/templates/recover_password.html.ep
2019-04-29 20:12:59 +02:00

77 lines
2.5 KiB
Text

<h1>Passwort zurücksetzen</h1>
% if (my $invalid = stash('invalid')) {
<div class="row">
<div class="col s12">
<div class="card red darken-4">
<div class="card-content white-text">
% if ($invalid eq 'csrf') {
<span class="card-title">Ungültiger CSRF-Token</span>
<p>Sind Cookies aktiviert? Ansonsten könnte es sich um einen
Fall von <a
href="https://de.wikipedia.org/wiki/Cross-Site-Request-Forgery">CSRF</a>
handeln.</p>
% }
% elsif ($invalid eq 'credentials') {
<span class="card-title">Ungültige Daten</span>
<p>Falscher Account oder falsches Mail-Adresse.</p>
% }
% elsif ($invalid eq 'in progress') {
<span class="card-title">Passwort-Reset wird durchgeführt</span>
<p>Es wurde bereits ein Reset-Link verschickt.</p>
% }
% elsif ($invalid eq 'token') {
<span class="card-title">Ungültiger Token</span>
<p>Der Reset-Token ist ungültig oder abgelaufen. Neuen beantragen?</p>
% }
% else {
<span class="card-title">Unbekannter Fehler</span>
<p>„<%= $invalid %>“</p>
% }
</div>
</div>
</div>
</div>
% }
% if (stash('success')) {
<div class="row">
<div class="col s12">
<div class="card green darken-4">
<div class="card-content white-text">
<span class="card-title">Passwort-Reset wird durchgeführt</span>
<p>
Ein für zwei Tage gültiger Reset-Link wurde an deine
Mail-Adresse verschickt. Sobald du damit ein neues Passwort
gesetzt hast, kannst du dich wieder anmelden.
</p>
</div>
</div>
</div>
</div>
% }
%= form_for '/recover' => (method => 'POST') => begin
%= csrf_field
<div class="row">
<div class="input-field col s12">
<i class="material-icons prefix">account_circle</i>
%= text_field 'user', id => 'user', class => 'validate', required => undef, maxlength => 60, autocomplete => 'username'
<label for="user">Account</label>
</div>
<div class="input-field col s12">
<i class="material-icons prefix">email</i>
%= email_field 'email', id => 'email', class => 'validate', required => undef, maxlength => 250
<label for="email">Mail-Adresse</label>
</div>
</div>
<div class="row">
<div class="col s3 m3 l3">
</div>
<div class="col s6 m6 l6 center-align">
<button class="btn waves-effect waves-light" type="submit" name="action" value="initiate">
Passwort-Reset
<i class="material-icons right">send</i>
</button>
</div>
<div class="col s3 m3 l3">
</div>
</div>
%= end