show separate errors for 'invalid credentials' and 'not confirmed yet'

This commit is contained in:
Daniel Friesel 2019-03-09 08:40:46 +01:00
parent 844a95f77f
commit 0f51f40661
2 changed files with 13 additions and 3 deletions

View file

@ -923,7 +923,13 @@ post '/login' => sub {
$self->redirect_to('/');
}
else {
$self->render( 'login', invalid => 'credentials' );
my $data = $self->get_user_password($user);
if ( $data and $data->{status} == 0 ) {
$self->render( 'login', invalid => 'confirmation' );
}
else {
$self->render( 'login', invalid => 'credentials' );
}
}
}
};

View file

@ -34,11 +34,15 @@
% }
% elsif ($invalid eq 'credentials') {
<span class="card-title">Ungültige Logindaten</span>
<p>Falscher (oder noch nicht freigeschalteter) Account oder falsches Passwort.</p>
<p>Falscher Account oder falsches Passwort.</p>
% }
% elsif ($invalid eq 'confirmation') {
<span class="card-title">Account nicht freigeschaltet</span>
<p>Bitte besuche zuerst den per Mail verschickten Bestätigungslink.</p>
% }
% else {
<span class="card-title">Unbekannter Fehler</span>
<p>Das sollte nicht passieren™</p>
<p>„<%= $invalid %>“</p>
% }
</div>
</div>