Testwerkzeug: cleanup.pl: (von Hand) aufgerufen werden alle testuser und testdatenban...
[kivitendo-erp.git] / SL / User.pm
index 0824a7d..d756a2a 100644 (file)
@@ -114,8 +114,12 @@ sub login {
   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;
@@ -169,12 +173,16 @@ sub login {
 $!";
 
       map { $form->{$_} = $myconfig{$_} }
-        qw(dbname dbhost dbport dbdriver dbuser dbpasswd);
+        qw(dbname dbhost dbport dbdriver dbuser dbpasswd dbconnect);
 
       $form->{dbupdate} = "db$myconfig{dbname}";
       $form->{ $form->{dbupdate} } = 1;
 
-      $form->info(sprintf($main::locale->text("Upgrading Dataset %s..."), $myconfig{dbname}));
+      $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} }));
 
       # required for Oracle
       $form->{dbdefault} = $sid;
@@ -188,7 +196,7 @@ $!";
       # remove lock file
       unlink "$userspath/nologin";
 
-      $form->info($main::locale->text("...done"));
+      print($form->parse_html_template("dbupgrade/footer"));
 
       $rc = -2;
 
@@ -409,8 +417,10 @@ sub process_perl_script {
   }
 
   if (!defined($result)) {
-    $form->dberror("The database update/creation did not succeed. The file ${filename} containing the following syntax error:<br>${@}<br>" .
-                   "All changes in that file have been reverted.");
+    print($form->parse_html_template("dbupgrade/error",
+                                     { "file" => $filename,
+                                       "error" => $@ }));
+    exit(0);
   } elsif (1 != $result) {
     unlink("users/nologin") if (2 == $result);
     exit(0);