Merge branch 'GewichtinVerkaufsbericht'
[kivitendo-erp.git] / bin / mozilla / admin.pl
index 75fb790..4409505 100755 (executable)
@@ -75,7 +75,7 @@ our $auth;
 
 my @valid_dateformats = qw(mm-dd-yy mm/dd/yy dd-mm-yy dd/mm/yy dd.mm.yy yyyy-mm-dd);
 my @valid_numberformats = ('1,000.00', '1000.00', '1.000,00', '1000,00');
-my @all_stylesheets = qw(lx-office-erp.css Win2000.css);
+my @all_stylesheets = qw(lx-office-erp.css Win2000.css Mobile.css kivitendo.css);
 my @all_menustyles = (
   { id => 'old', title => $::locale->text('Old (on the side)') },
   { id => 'v3',  title => $::locale->text('Top (CSS)') },
@@ -91,20 +91,18 @@ sub run {
   $locale = $::locale;
   $auth   = $::auth;
 
-  $::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}) != $auth->OK()) {
+    if ($auth->authenticate_root($form->{'{AUTH}admin_password'}) != $auth->OK()) {
+      $auth->punish_wrong_login;
       $form->{error_message} = $locale->text('Incorrect Password!');
-      $auth->delete_session_value('rpw');
+      $auth->delete_session_value('admin_password');
       adminlogin();
     } else {
       if ($auth->session_tables_present()) {
-        $::auth->store_root_credentials_in_session($::form->{rpw});
-        delete $::form->{rpw};
+        delete $::form->{'{AUTH}admin_password'};
         _apply_dbupgrade_scripts();
       }
 
@@ -124,7 +122,7 @@ sub adminlogin {
   my $form   = $main::form;
   my $locale = $main::locale;
 
-  $form->{title} = qq|Lx-Office ERP $form->{version} | . $locale->text('Administration');
+  $form->{title} = qq|kivitendo $form->{version} | . $locale->text('Administration');
 
   $form->header();
   print $form->parse_html_template('admin/adminlogin');
@@ -197,7 +195,7 @@ sub create_auth_tables {
   my $locale = $main::locale;
 
   $main::auth->create_tables();
-  $main::auth->set_session_value('rpw', $form->{rpw});
+  $main::auth->set_session_value('admin_password', $form->{'{AUTH}admin_password'});
   $main::auth->create_or_refresh_session();
 
   my $memberfile = $::lx_office_conf{paths}->{memberfile};
@@ -367,7 +365,7 @@ sub list_users {
     $_->{login_url} =  $::locale->is_utf8 ? Encode::encode('utf-8-strict', $_->{login}) : $_->{login_url};
   }
 
-  $form->{title}   = "Lx-Office ERP " . $locale->text('Administration');
+  $form->{title}   = "kivitendo " . $locale->text('Administration');
   $form->{LOCKED}  = -e _nologin_file_name();
   $form->{MEMBERS} = [ @members{sort { lc $a cmp lc $b } keys %members} ];
 
@@ -376,7 +374,7 @@ sub list_users {
 }
 
 sub add_user {
-  $::form->{title}   = "Lx-Office ERP " . $::locale->text('Administration') . " / " . $::locale->text('Add User');
+  $::form->{title}   = "kivitendo " . $::locale->text('Administration') . " / " . $::locale->text('Add User');
 
 # Note: Menu Style 'v3' is not compatible to all browsers!
 # "menustyle"    => "old" sets the HTML Menu to default.
@@ -397,7 +395,7 @@ sub add_user {
 }
 
 sub edit_user {
-  $::form->{title} = "Lx-Office ERP " . $::locale->text('Administration') . " / " . $::locale->text('Edit User');
+  $::form->{title} = "kivitendo " . $::locale->text('Administration') . " / " . $::locale->text('Edit User');
   $::form->{edit}  = 1;
 
   # get user
@@ -476,7 +474,7 @@ sub save_user {
   $user->{templates} =~ s|.*/||;
   $user->{templates} =  $::lx_office_conf{paths}->{templates} . "/$user->{templates}";
 
-  my $myconfig = new User(id => $form->{id});
+  my $myconfig = new User(id => $user->{id});
 
   $::form->show_generic_error($::locale->text('Dataset missing!'))       unless $user->{dbname};
   $::form->show_generic_error($::locale->text('Database User missing!')) unless $user->{dbuser};
@@ -542,7 +540,7 @@ sub save_user {
   # Add new user to his groups.
   if (ref $form->{new_user_group_ids} eq 'ARRAY') {
     my $all_groups = $main::auth->read_groups();
-    my %user       = $main::auth->read_user(login => $user->{login});
+    my %user       = $main::auth->read_user(login => $myconfig->{login});
 
     foreach my $group_id (@{ $form->{new_user_group_ids} }) {
       my $group = $all_groups->{$group_id};
@@ -564,7 +562,7 @@ sub save_user {
       $form->error($::locale->text('The settings were saved, but the password was not changed.') . ' ' . join(' ', $verifier->errors($result)));
     }
 
-    $main::auth->change_password($user->{login}, $::form->{new_password});
+    $main::auth->change_password($myconfig->{login}, $::form->{new_password});
   }
 
   $::form->redirect($::locale->text('User saved!'));
@@ -653,7 +651,7 @@ sub dbselect_source {
   $form->{dbdefault} = 'template1';
   $form->{dbhost}    = $::auth->{DB_config}->{host} || 'localhost';
 
-  $form->{title}     = "Lx-Office ERP / " . $locale->text('Database Administration');
+  $form->{title}     = "kivitendo / " . $locale->text('Database Administration');
 
   # Intentionnaly disabled unless fixed to work with the authentication DB.
   $form->{ALLOW_DBBACKUP} = 0; # "$pg_dump_exe" ne "DISABLED";
@@ -689,7 +687,7 @@ sub update_dataset {
   my $form              = $main::form;
   my $locale            = $main::locale;
 
-  $form->{title}        = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Update Dataset');
+  $form->{title}        = "kivitendo " . $locale->text('Database Administration') . " / " . $locale->text('Update Dataset');
 
   my @need_updates      = User->dbneedsupdate($form);
   $form->{NEED_UPDATES} = \@need_updates;
@@ -794,7 +792,7 @@ sub create_dataset {
     }
   }
 
-  $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Create Dataset');
+  $form->{title} = "kivitendo " . $locale->text('Database Administration') . " / " . $locale->text('Create Dataset');
 
   $form->header();
   print $form->parse_html_template("admin/create_dataset");
@@ -808,7 +806,7 @@ sub dbcreate {
 
   User->dbcreate(\%$form);
 
-  $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Create Dataset');
+  $form->{title} = "kivitendo " . $locale->text('Database Administration') . " / " . $locale->text('Create Dataset');
 
   $form->header();
   print $form->parse_html_template("admin/dbcreate");
@@ -821,7 +819,7 @@ sub delete_dataset {
   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}     = "kivitendo " . $locale->text('Database Administration') . " / " . $locale->text('Delete Dataset');
   $form->{DBSOURCES} = [ map { { "name", $_ } } sort @dbsources ];
 
   $form->header();
@@ -838,7 +836,7 @@ sub dbdelete {
 
   User->dbdelete(\%$form);
 
-  $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Delete Dataset');
+  $form->{title} = "kivitendo " . $locale->text('Database Administration') . " / " . $locale->text('Delete Dataset');
   $form->header();
   print $form->parse_html_template("admin/dbdelete");
 }
@@ -847,7 +845,7 @@ sub backup_dataset {
   my $form       = $main::form;
   my $locale     = $main::locale;
 
-  $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Backup Dataset');
+  $form->{title} = "kivitendo " . $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 the configuration.'));
@@ -859,7 +857,7 @@ sub backup_dataset {
 
   my $username  = getpwuid $UID || "unknown-user";
   my $hostname  = hostname() || "unknown-host";
-  $form->{from} = "Lx-Office Admin <${username}\@${hostname}>";
+  $form->{from} = "kivitendo Admin <${username}\@${hostname}>";
 
   $form->header();
   print $form->parse_html_template("admin/backup_dataset");
@@ -869,7 +867,7 @@ sub backup_dataset_start {
   my $form       = $main::form;
   my $locale     = $main::locale;
 
-  $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Backup Dataset');
+  $form->{title} = "kivitendo " . $locale->text('Database Administration') . " / " . $locale->text('Backup Dataset');
 
   my $pg_dump_exe = $::lx_office_conf{applications}->{pg_dump} || "pg_dump";
 
@@ -945,7 +943,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} = "kivitendo " . $locale->text('Database Administration') . " / " . $locale->text('Backup Dataset');
 
     $form->header();
     print $form->parse_html_template("admin/backup_dataset_email_done");
@@ -956,7 +954,7 @@ sub restore_dataset {
   my $form       = $main::form;
   my $locale     = $main::locale;
 
-  $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Restore Dataset');
+  $form->{title} = "kivitendo " . $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 the configuration.'));
@@ -981,7 +979,7 @@ sub restore_dataset_start {
   my $form       = $main::form;
   my $locale     = $main::locale;
 
-  $form->{title} = "Lx-Office ERP " . $locale->text('Database Administration') . " / " . $locale->text('Restore Dataset');
+  $form->{title} = "kivitendo " . $locale->text('Database Administration') . " / " . $locale->text('Restore Dataset');
 
   my $pg_restore_exe = $::lx_office_conf{applications}->{pg_restore} || "pg_restore";