X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fadmin.pl;h=08b97c439dadf37525fab8a18d6f5d8e2da165bb;hb=b02735f55360e5a4e02dca40458b48cf057ecd7b;hp=b1b24737b149aadd1bccac08af17acec23de9157;hpb=be6f6cfd8dc7def5356edd0c5aacb814b4baded1;p=kivitendo-erp.git diff --git a/bin/mozilla/admin.pl b/bin/mozilla/admin.pl index b1b24737b..08b97c439 100755 --- a/bin/mozilla/admin.pl +++ b/bin/mozilla/admin.pl @@ -34,6 +34,7 @@ use DBI; use CGI; +use Encode; use English qw(-no_match_vars); use Fcntl; use File::Copy; @@ -72,19 +73,20 @@ sub run { $locale = $::locale; $auth = $::auth; - $::auth->set_session_value('rpw', $::form->{rpw}) if $session_result == SL::Auth->SESSION_OK; + $::auth->store_root_credentials_in_session($form->{rpw}) if $session_result == SL::Auth->SESSION_OK; $form->{stylesheet} = "lx-office-erp.css"; $form->{favicon} = "favicon.ico"; if ($form->{action}) { - if ($auth->authenticate_root($form->{rpw}, 0) != $auth->OK()) { + if ($auth->authenticate_root($form->{rpw}) != $auth->OK()) { $form->{error_message} = $locale->text('Incorrect Password!'); + $auth->delete_session_value('rpw'); adminlogin(); } else { if ($auth->session_tables_present()) { - $::auth->set_session_value('rpw', $::form->{rpw}); - $::auth->create_or_refresh_session(); + $::auth->store_root_credentials_in_session($::form->{rpw}); + delete $::form->{rpw}; _apply_dbupgrade_scripts(); } @@ -194,6 +196,7 @@ sub create_auth_tables { $main::auth->save_group($group); } + _apply_dbupgrade_scripts(); login(); } @@ -341,7 +344,10 @@ sub list_users { delete $members{"root login"}; - map { $_->{templates} =~ s|.*/||; } values %members; + for (values %members) { + $_->{templates} =~ s|.*/||; + $_->{login_url} = $::locale->is_utf8 ? Encode::encode('utf-8-strict', $_->{login}) : $_->{login_url}; + } $form->{title} = "Lx-Office ERP " . $locale->text('Administration'); $form->{LOCKED} = -e _nologin_file_name(); @@ -734,7 +740,8 @@ sub dbupdate { foreach my $i (@update_rows) { restore_form($saved_form); - map { $form->{$_} = $form->{"${_}_${i}"} } qw(dbname dbdriver dbhost dbport dbuser dbpasswd); + %::myconfig = (); + map { $form->{$_} = $::myconfig{$_} = $form->{"${_}_${i}"} } qw(dbname dbdriver dbhost dbport dbuser dbpasswd); print $form->parse_html_template("admin/dbupgrade_header"); @@ -767,6 +774,24 @@ sub create_dataset { } closedir SQLDIR; + $form->{ACCOUNTING_METHODS} = []; + foreach my $item ( qw(accrual cash) ) { + push @{ $form->{ACCOUNTING_METHODS} }, { "name" => $item, + "selected" => $item eq "cash" }; + }; + + $form->{INVENTORY_SYSTEMS} = []; + foreach my $item ( qw(perpetual periodic) ) { + push @{ $form->{INVENTORY_SYSTEMS} }, { "name" => $item, + "selected" => $item eq "periodic" }; + }; + + $form->{PROFIT_DETERMINATIONS} = []; + foreach my $item ( qw(balance income) ) { + push @{ $form->{PROFIT_DETERMINATIONS} }, { "name" => $item, + "selected" => $item eq "income" }; + }; + my $default_charset = $::lx_office_conf{system}->{dbcharset}; $default_charset ||= Common::DEFAULT_CHARSET; @@ -846,7 +871,7 @@ sub backup_dataset { $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Backup Dataset'); if ($::lx_office_conf{applications}->{pg_dump} eq "DISABLED") { - $form->error($locale->text('Database backups and restorations are disabled in lx-erp.conf.')); + $form->error($locale->text('Database backups and restorations are disabled in the configuration.')); } my @dbsources = sort User->dbsources($form); @@ -870,7 +895,7 @@ sub backup_dataset_start { my $pg_dump_exe = $::lx_office_conf{applications}->{pg_dump} || "pg_dump"; if ("$pg_dump_exe" eq "DISABLED") { - $form->error($locale->text('Database backups and restorations are disabled in lx-erp.conf.')); + $form->error($locale->text('Database backups and restorations are disabled in the configuration.')); } $form->isblank("dbname", $locale->text('The dataset name is missing.')); @@ -955,7 +980,7 @@ sub restore_dataset { $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Restore Dataset'); if ($::lx_office_conf{applications}->{pg_restore} eq "DISABLED") { - $form->error($locale->text('Database backups and restorations are disabled in lx-erp.conf.')); + $form->error($locale->text('Database backups and restorations are disabled in the configuration.')); } my $default_charset = $::lx_office_conf{system}->{dbcharset}; @@ -982,7 +1007,7 @@ sub restore_dataset_start { my $pg_restore_exe = $::lx_office_conf{applications}->{pg_restore} || "pg_restore"; if ("$pg_restore_exe" eq "DISABLED") { - $form->error($locale->text('Database backups and restorations are disabled in lx-erp.conf.')); + $form->error($locale->text('Database backups and restorations are disabled in the configuration.')); } $form->isblank("new_dbname", $locale->text('The dataset name is missing.'));