X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FUser.pm;h=46fe855810691cc738cfbfd941f28db0a14324dc;hb=4fd22b569d4436293e0a9d364d7356b5bfc503e5;hp=102b9382e0a2aa8af6de95c6cd6c70fc00dca045;hpb=684e84d8b410627473b2187c031f0d9143ea1a60;p=kivitendo-erp.git diff --git a/SL/User.pm b/SL/User.pm index 102b9382e..46fe85581 100644 --- a/SL/User.pm +++ b/SL/User.pm @@ -34,8 +34,6 @@ package User; -#use strict; - use IO::File; use Fcntl qw(:seek); @@ -45,6 +43,8 @@ use SL::DBUtils; use SL::Iconv; use SL::Inifile; +use strict; + sub new { $main::lxdebug->enter_sub(); @@ -107,7 +107,7 @@ sub login { my $dbh = DBI->connect($myconfig{dbconnect}, $myconfig{dbuser}, $myconfig{dbpasswd}) - or $self->error(DBI::errstr); + or $self->error($DBI::errstr); # we got a connection, check the version my $query = qq|SELECT version FROM defaults|; @@ -144,7 +144,7 @@ sub login { if ($form->{"show_dbupdate_warning"}) { print $form->parse_html_template("dbupgrade/warning"); - exit(0); + ::end_of_request(); } # update the tables @@ -412,7 +412,7 @@ sub dbcreate { # Process a Perl script which updates the database. # If the script returns 1 then the update was successful. # Return code "2" means "needs more interaction; remove -# users/nologin and exit". +# users/nologin and end current request". # All other return codes are fatal errors. sub process_perl_script { $main::lxdebug->enter_sub(); @@ -445,14 +445,12 @@ sub process_perl_script { $dbh->begin_work(); + # setup dbup_ export vars my %dbup_myconfig = (); map({ $dbup_myconfig{$_} = $form->{$_}; } qw(dbname dbuser dbpasswd dbhost dbport dbconnect)); - my $nls_file = $filename; - $nls_file =~ s|.*/||; - $nls_file =~ s|.pl$||; - my $dbup_locale = Locale->new($main::language, $nls_file); + my $dbup_locale = $::locale; my $result = eval($contents); @@ -465,10 +463,10 @@ sub process_perl_script { print $form->parse_html_template("dbupgrade/error", { "file" => $filename, "error" => $@ }); - exit(0); + ::end_of_request(); } elsif (1 != $result) { unlink("users/nologin") if (2 == $result); - exit(0); + ::end_of_request(); } if (ref($version_or_control) eq "HASH") { @@ -802,7 +800,7 @@ sub dbupdate { last if ($version < $mindb); # apply upgrade - $main::lxdebug->message(LXDebug::DEBUG2, "Applying Update $upgradescript"); + $main::lxdebug->message(LXDebug->DEBUG2(), "Applying Update $upgradescript"); if ($file_type eq "sql") { $self->process_query($form, $dbh, "sql/" . $form->{"dbdriver"} . "-upgrade/$upgradescript", $str_maxdb, $db_charset); @@ -886,7 +884,7 @@ sub dbupdate2 { my $file_type = $1; # apply upgrade - $main::lxdebug->message(LXDebug::DEBUG2, "Applying Update $control->{file}"); + $main::lxdebug->message(LXDebug->DEBUG2(), "Applying Update $control->{file}"); print $form->parse_html_template("dbupgrade/upgrade_message2", $control); if ($file_type eq "sql") { @@ -1002,7 +1000,7 @@ sub config_vars { bestellungen rechnungen anfragen lieferantenbestellungen einkaufsrechnungen taxnumber co_ustid duns menustyle template_format default_media default_printer_id copies show_form_details favorites - pdonumber sdonumber); + pdonumber sdonumber hide_cvar_search_options mandatory_departments); $main::lxdebug->leave_sub();