X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=am.pl;h=a874f6df6fac0ec6acffac489264a49b312cf3c6;hb=03ec3ee14029c2424f7ea10c984c6318ee439cbd;hp=5b3d66622853706857ecbace0ef2d93fb1274d22;hpb=8c7e44938a661e035f62840e1e177353240ace5d;p=kivitendo-erp.git diff --git a/am.pl b/am.pl index 5b3d66622..a874f6df6 100755 --- a/am.pl +++ b/am.pl @@ -63,7 +63,7 @@ if (!$auth->session_tables_present()) { _show_error('login/auth_db_unreachable'); } $auth->expire_sessions(); -$auth->restore_session(); +my $session_result = $auth->restore_session(); require "bin/mozilla/common.pl"; @@ -99,19 +99,23 @@ if (-e "$userspath/nologin") { $form->error($locale->text('System currently down for maintenance!')); } +if (SL::Auth::SESSION_EXPIRED == $session_result) { + _show_error('login/password_error', 'session'); +} + $form->{login} =~ s|.*/||; %myconfig = $auth->read_user($form->{login}); if (!$myconfig{login}) { - _show_error('login/password_error'); + _show_error('login/password_error', 'password'); } # locale messages $locale = new Locale "$myconfig{countrycode}", "$script"; if (SL::Auth::OK != $auth->authenticate($form->{login}, $form->{password}, 0)) { - _show_error('login/password_error'); + _show_error('login/password_error', 'password'); } $auth->set_session_value('login', $form->{login}, 'password', $form->{password}); @@ -152,7 +156,10 @@ if ($form->{action}) { sub _show_error { my $template = shift; + my $error_type = shift; $locale = Locale->new($language, 'all'); + $form->{error} = $locale->text('The session is invalid or has expired.') if ($error_type eq 'session'); + $form->{error} = $locale->text('Incorrect password!.') if ($error_type eq 'password'); $myconfig{countrycode} = $language; $form->{stylesheet} = 'css/lx-office-erp.css';