X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FAuth.pm;h=087301a5eaabede0c0f0b5003111e2118808321b;hb=f3da2d8e75128e5b912d2ceddc680bea9552d19b;hp=1202887553a4dca34c261d7b1f0bef0bab48831b;hpb=9ae27aaed7df10d51373d5ddf94d8479ade1071d;p=kivitendo-erp.git diff --git a/SL/Auth.pm b/SL/Auth.pm index 120288755..087301a5e 100644 --- a/SL/Auth.pm +++ b/SL/Auth.pm @@ -13,6 +13,7 @@ use SL::Auth::DB; use SL::Auth::LDAP; use SL::User; +use SL::DBUpgrade2; use SL::DBUtils; use strict; @@ -187,7 +188,7 @@ sub dbconnect { $main::form->error($main::locale->text('The connection to the authentication database failed:') . "\n" . $DBI::errstr); } - $main::lxdebug->leave_sub(); + $main::lxdebug->leave_sub(2); return $self->{dbh}; } @@ -303,7 +304,7 @@ sub create_tables { $charset ||= Common::DEFAULT_CHARSET; $dbh->rollback(); - User->process_query($main::form, $dbh, 'sql/auth_db.sql', undef, $charset); + SL::DBUpgrade2->new(form => $::form)->process_query($dbh, 'sql/auth_db.sql', undef, $charset); $main::lxdebug->leave_sub(); } @@ -489,16 +490,15 @@ sub restore_session { if (!$cookie || $cookie->{is_expired} || ($cookie->{ip_address} ne $ENV{REMOTE_ADDR})) { $self->destroy_session(); $main::lxdebug->leave_sub(); - return SESSION_EXPIRED; + return $cookie ? SESSION_EXPIRED : SESSION_NONE; } $query = qq|SELECT sess_key, sess_value FROM auth.session_content WHERE session_id = ?|; $sth = prepare_execute_query($form, $dbh, $query, $session_id); while (my $ref = $sth->fetchrow_hashref()) { - my $value = $self->_load_value($ref->{sess_value}); - $self->{SESSION}->{$ref->{sess_key}} = $value; - $form->{$ref->{sess_key}} = $value if (!defined $form->{$ref->{sess_key}}); + $self->{SESSION}->{$ref->{sess_key}} = $ref->{sess_value}; + $form->{$ref->{sess_key}} = $self->_load_value($ref->{sess_value}) if (!defined $form->{$ref->{sess_key}}); } $sth->finish();