if ($self->{login}) {
if ($self->{password}) {
- $form->{password} = crypt $form->{password},
- substr($self->{login}, 0, 2);
+ if ($form->{hashed_password}) {
+ $form->{password} = $form->{hashed_password};
+ } else {
+ $form->{password} = crypt($form->{password},
+ substr($self->{login}, 0, 2));
+ }
if ($self->{password} ne $form->{password}) {
$main::lxdebug->leave_sub();
return -1;
if (&update_available($myconfig{"dbdriver"}, $dbversion)) {
- # update the tables
- open FH, ">$userspath/nologin" or die "
-$!";
-
map { $form->{$_} = $myconfig{$_} }
- qw(dbname dbhost dbport dbdriver dbuser dbpasswd);
-
- $form->{dbupdate} = "db$myconfig{dbname}";
- $form->{ $form->{dbupdate} } = 1;
+ qw(dbname dbhost dbport dbdriver dbuser dbpasswd dbconnect);
$form->{"stylesheet"} = "lx-office-erp.css";
$form->{"title"} = $main::locale->text("Dataset upgrade");
$form->header();
- print($form->parse_html_template("dbupgrade/header",
- { "dbname" => $myconfig{dbname} }));
+ print($form->parse_html_template("dbupgrade/header"));
+
+ $form->{dbupdate} = "db$myconfig{dbname}";
+ $form->{ $form->{dbupdate} } = 1;
+
+ if ($form->{"show_dbupdate_warning"}) {
+ print($form->parse_html_template("dbupgrade/warning"));
+ exit(0);
+ }
+
+ # update the tables
+ open FH, ">$userspath/nologin" or die "
+$!";
# required for Oracle
$form->{dbdefault} = $sid;
$filename = qq|sql/$form->{chart}-chart.sql|;
$self->process_query($form, $dbh, $filename);
+ $query = "UPDATE defaults SET coa = " . $dbh->quote($form->{"chart"});
+ $dbh->do($query) || $form->dberror($query);
+
$dbh->disconnect;
$main::lxdebug->leave_sub();
$dbh->begin_work();
+ 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 $result = eval($contents);
if (1 != $result) {