X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fadmin.pl;h=3a5e810c25a9e713b24f37633cff355295f06112;hb=faad5f2cf0207ac5d63605c2f969c02702049b4b;hp=8bd621c80fd56cfb9d1c73937d423c9fb2802c6e;hpb=dc50b737f80c8bd09ac2fbbfa2cc06a04e9d8753;p=kivitendo-erp.git diff --git a/bin/mozilla/admin.pl b/bin/mozilla/admin.pl index 8bd621c80..3a5e810c2 100755 --- a/bin/mozilla/admin.pl +++ b/bin/mozilla/admin.pl @@ -32,8 +32,6 @@ # #====================================================================== -my $menufile = "menu.ini"; - use DBI; use CGI; use English qw(-no_match_vars); @@ -54,6 +52,7 @@ use SL::DBUtils; require "bin/mozilla/common.pl"; require "bin/mozilla/admin_groups.pl"; +require "bin/mozilla/admin_printer.pl"; use strict; @@ -81,7 +80,10 @@ sub run { $form->{error_message} = $locale->text('Incorrect Password!'); adminlogin(); } else { - $auth->create_or_refresh_session() if ($auth->session_tables_present()); + if ($auth->session_tables_present()) { + $::auth->set_session_value('rpw', $::form->{rpw}); + $::auth->create_or_refresh_session(); + } call_sub($locale->findsub($form->{action})); } } elsif ($auth->authenticate_root($form->{rpw}, 0) == $auth->OK()) { @@ -100,8 +102,8 @@ sub run { } sub adminlogin { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; $form->{title} = qq|Lx-Office ERP $form->{version} | . $locale->text('Administration'); @@ -120,8 +122,8 @@ sub logout { } sub check_auth_db_and_tables { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; my %params; @@ -132,7 +134,7 @@ sub check_auth_db_and_tables { $form->header(); print $form->parse_html_template('admin/check_auth_database', \%params); - exit 0; + ::end_of_request(); } if (!$main::auth->check_tables()) { @@ -140,7 +142,7 @@ sub check_auth_db_and_tables { $form->header(); print $form->parse_html_template('admin/check_auth_tables', \%params); - exit 0; + ::end_of_request(); } if (-f $main::memberfile) { @@ -157,22 +159,22 @@ sub check_auth_db_and_tables { print $form->parse_html_template('admin/user_migration', { 'memberfile' => $main::memberfile, 'backupdir' => $backupdir }); - exit 0 + ::end_of_request(); } } sub create_auth_db { - my $form = $main::form; + my $form = $main::form; $main::auth->create_database('superuser' => $form->{db_superuser}, - 'superuser_password' => $form->{db_superuser_password}, - 'template' => $form->{db_template}); + 'superuser_password' => $form->{db_superuser_password}, + 'template' => $form->{db_template}); login(); } sub create_auth_tables { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; $main::auth->create_tables(); $main::auth->set_session_value('rpw', $form->{rpw}); @@ -197,8 +199,8 @@ sub create_auth_tables { sub migrate_users { $main::lxdebug->enter_sub(); - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; my $memberdir = ""; @@ -277,8 +279,8 @@ sub migrate_users { } sub create_standard_group_ask { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; $form->{title} = $locale->text('Create a standard group'); @@ -287,12 +289,12 @@ sub create_standard_group_ask { } sub create_standard_group { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; my %members = $main::auth->read_all_users(); - my $groups = $main::auth->read_groups(); + my $groups = $main::auth->read_groups(); foreach my $group (values %{$groups}) { if (($form->{group_id} != $group->{id}) @@ -320,8 +322,8 @@ sub dont_create_standard_group { sub user_migration_complete { my $standard_group_created = shift; - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; $form->{title} = $locale->text('User migration complete'); $form->header(); @@ -330,8 +332,8 @@ sub user_migration_complete { } sub list_users { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; my %members = $main::auth->read_all_users(); @@ -348,37 +350,31 @@ sub list_users { } sub add_user { + my $form = $main::form; + my $locale = $main::locale; - my $form = $main::form; - my $locale = $main::locale; - - $form->{title} = - "Lx-Office ERP " - . $locale->text('Administration') . " / " - . $locale->text('Add User'); + $form->{title} = "Lx-Office ERP " . $locale->text('Administration') . " / " . $locale->text('Add User'); - my $myconfig = { +# Note: Menu Style 'v3' is not compatible to all browsers! +# "menustyle" => "old" sets the HTML Menu to default. + my $myconfig = { "vclimit" => 200, "countrycode" => "de", "numberformat" => "1.000,00", "dateformat" => "dd.mm.yy", "stylesheet" => "lx-office-erp.css", - "menustyle" => "v3", + "menustyle" => "old", }; edit_user_form($myconfig); } sub edit_user { - my $form = $main::form; - my $locale = $main::locale; - + my $form = $main::form; + my $locale = $main::locale; - $form->{title} = - "Lx-Office ERP " - . $locale->text('Administration') . " / " - . $locale->text('Edit User'); - $form->{edit} = 1; + $form->{title} = "Lx-Office ERP " . $locale->text('Administration') . " / " . $locale->text('Edit User'); + $form->{edit} = 1; $form->isblank("login", $locale->text("The login is missing.")); @@ -394,8 +390,8 @@ sub edit_user { sub edit_user_form { my ($myconfig) = @_; - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; my @valid_dateformats = qw(mm-dd-yy mm/dd/yy dd-mm-yy dd/mm/yy dd.mm.yy yyyy-mm-dd); $form->{ALL_DATEFORMATS} = [ map { { "format" => $_, "selected" => $_ eq $myconfig->{dateformat} } } @valid_dateformats ]; @@ -470,8 +466,8 @@ sub edit_user_form { } sub save_user { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; $form->{dbdriver} = 'Pg'; @@ -585,7 +581,7 @@ sub save_user { } sub save_user_as_new { - my $form = $main::form; + my $form = $main::form; $form->{login} = $form->{new_user_login}; delete @{$form}{qw(edit new_user_login)}; @@ -594,8 +590,8 @@ sub save_user_as_new { } sub delete_user { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; my %members = $main::auth->read_all_users(); my $templates = $members{$form->{login}}->{templates}; @@ -631,10 +627,7 @@ sub login_name { } sub get_value { - my $line = shift; - - my $form = $main::form; - + my $line = shift; my ($null, $value) = split(/=/, $line, 2); # remove comments @@ -647,7 +640,7 @@ sub get_value { } sub pg_database_administration { - my $form = $main::form; + my $form = $main::form; $form->{dbdriver} = 'Pg'; dbselect_source(); @@ -655,11 +648,11 @@ sub pg_database_administration { } sub dbselect_source { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; $form->{dbport} = '5432'; - $form->{dbuser} = 'postgres'; + $form->{dbuser} = 'lxoffice'; $form->{dbdefault} = 'template1'; $form->{dbhost} = 'localhost'; @@ -673,8 +666,8 @@ sub dbselect_source { } sub test_db_connection { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; $form->{dbdriver} = 'Pg'; User::dbconnect_vars($form, $form->{dbname}); @@ -696,13 +689,10 @@ sub continue { } sub update_dataset { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; - $form->{title} = - "Lx-Office ERP " - . $locale->text('Database Administration') . " / " - . $locale->text('Update Dataset'); + $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Update Dataset'); my @need_updates = User->dbneedsupdate($form); $form->{NEED_UPDATES} = \@need_updates; @@ -713,8 +703,8 @@ sub update_dataset { } sub dbupdate { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; $form->{stylesheet} = "lx-office-erp.css"; $form->{title} = $locale->text("Dataset upgrade"); @@ -751,12 +741,12 @@ sub dbupdate { } sub create_dataset { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; $form->{dbsources} = join " ", map { "[${_}]" } sort User->dbsources($form); - $form->{CHARTS} = []; + $form->{CHARTS} = []; opendir SQLDIR, "sql/." or $form->error($ERRNO); foreach my $item (sort grep /-chart\.sql\z/, readdir SQLDIR) { @@ -790,43 +780,34 @@ sub create_dataset { } } - $form->{title} = - "Lx-Office ERP " - . $locale->text('Database Administration') . " / " - . $locale->text('Create Dataset'); + $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Create Dataset'); $form->header(); print $form->parse_html_template("admin/create_dataset"); } sub dbcreate { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; $form->isblank("db", $locale->text('Dataset missing!')); User->dbcreate(\%$form); - $form->{title} = - "Lx-Office ERP " - . $locale->text('Database Administration') . " / " - . $locale->text('Create Dataset'); + $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Create Dataset'); $form->header(); print $form->parse_html_template("admin/dbcreate"); } sub delete_dataset { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; my @dbsources = User->dbsources_unused($form); $form->error($locale->text('Nothing to delete!')) unless @dbsources; - $form->{title} = - "Lx-Office ERP " - . $locale->text('Database Administration') . " / " - . $locale->text('Delete Dataset'); + $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Delete Dataset'); $form->{DBSOURCES} = [ map { { "name", $_ } } sort @dbsources ]; $form->header(); @@ -834,8 +815,8 @@ sub delete_dataset { } sub dbdelete { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; if (!$form->{db}) { $form->error($locale->text('No Dataset selected!')); @@ -843,22 +824,16 @@ sub dbdelete { User->dbdelete(\%$form); - $form->{title} = - "Lx-Office ERP " - . $locale->text('Database Administration') . " / " - . $locale->text('Delete Dataset'); + $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Delete Dataset'); $form->header(); print $form->parse_html_template("admin/dbdelete"); } sub backup_dataset { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; - $form->{title} = - "Lx-Office ERP " - . $locale->text('Database Administration') . " / " - . $locale->text('Backup Dataset'); + $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Backup Dataset'); if ("$main::pg_dump_exe" eq "DISABLED") { $form->error($locale->text('Database backups and restorations are disabled in lx-erp.conf.')); @@ -877,13 +852,10 @@ sub backup_dataset { } sub backup_dataset_start { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; - $form->{title} = - "Lx-Office ERP " - . $locale->text('Database Administration') . " / " - . $locale->text('Backup Dataset'); + $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Backup Dataset'); $main::pg_dump_exe ||= "pg_dump"; @@ -959,10 +931,7 @@ sub backup_dataset_start { unlink "${tmpdir}/.pgpass", $tmp; rmdir $tmpdir; - $form->{title} = - "Lx-Office ERP " - . $locale->text('Database Administration') . " / " - . $locale->text('Backup Dataset'); + $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Backup Dataset'); $form->header(); print $form->parse_html_template("admin/backup_dataset_email_done"); @@ -970,13 +939,10 @@ sub backup_dataset_start { } sub restore_dataset { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; - $form->{title} = - "Lx-Office ERP " - . $locale->text('Database Administration') . " / " - . $locale->text('Restore Dataset'); + $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Restore Dataset'); if ("$main::pg_restore_exe" eq "DISABLED") { $form->error($locale->text('Database backups and restorations are disabled in lx-erp.conf.')); @@ -998,13 +964,10 @@ sub restore_dataset { } sub restore_dataset_start { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; - $form->{title} = - "Lx-Office ERP " - . $locale->text('Database Administration') . " / " - . $locale->text('Restore Dataset'); + $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Restore Dataset'); $main::pg_restore_exe ||= "pg_restore"; @@ -1124,8 +1087,8 @@ sub restore_dataset_start { } sub unlock_system { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; unlink "$main::userspath/nologin"; @@ -1136,8 +1099,8 @@ sub unlock_system { } sub lock_system { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; open(FH, ">$main::userspath/nologin") or $form->error($locale->text('Cannot create Lock!')); @@ -1162,7 +1125,7 @@ sub add { } sub edit { - my $form = $main::form; + my $form = $main::form; $form->{edit_nextsub} ||= 'edit_user'; @@ -1178,7 +1141,7 @@ sub delete { } sub save { - my $form = $main::form; + my $form = $main::form; $form->{save_nextsub} ||= 'save_user'; @@ -1190,8 +1153,8 @@ sub back { } sub dispatcher { - my $form = $main::form; - my $locale = $main::locale; + my $form = $main::form; + my $locale = $main::locale; foreach my $action (qw(create_standard_group dont_create_standard_group save_user delete_user save_user_as_new)) {