- # these defaults are database wide
- # user specific variables are in myconfig
- # save defaults
- my $query =
- qq|UPDATE defaults SET | .
- qq|inventory_accno_id = (SELECT c.id FROM chart c WHERE c.accno = ?), | .
- qq|income_accno_id = (SELECT c.id FROM chart c WHERE c.accno = ?), | .
- qq|expense_accno_id = (SELECT c.id FROM chart c WHERE c.accno = ?), | .
- qq|fxgain_accno_id = (SELECT c.id FROM chart c WHERE c.accno = ?), | .
- qq|fxloss_accno_id = (SELECT c.id FROM chart c WHERE c.accno = ?), | .
- qq|invnumber = ?, | .
- qq|cnnumber = ?, | .
- qq|sonumber = ?, | .
- qq|ponumber = ?, | .
- qq|sqnumber = ?, | .
- qq|rfqnumber = ?, | .
- qq|customernumber = ?, | .
- qq|vendornumber = ?, | .
- qq|articlenumber = ?, | .
- qq|servicenumber = ?, | .
- qq|yearend = ?, | .
- qq|curr = ?, | .
- qq|businessnumber = ?|;
- my @values = ($form->{inventory_accno}, $form->{income_accno},
- $form->{expense_accno},
- $form->{fxgain_accno}, $form->{fxloss_accno},
- $form->{invnumber}, $form->{cnnumber},
- $form->{sonumber}, $form->{ponumber},
- $form->{sqnumber}, $form->{rfqnumber},
- $form->{customernumber}, $form->{vendornumber},
- $form->{articlenumber}, $form->{servicenumber},
- $form->{yearend}, $form->{curr},
- $form->{businessnumber});
- do_query($form, $dbh, $query, @values);
-
- # update name
- $query = qq|UPDATE employee
- SET name = ?
- WHERE login = ?|;
- do_query($form, $dbh, $query, $form->{name}, $form->{login});
-
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- # save first currency in myconfig
- $form->{currency} = substr($form->{curr}, 0, 3);
-
- my $myconfig = new User "$memberfile", "$form->{login}";
-
- foreach my $item (keys %$form) {
- $myconfig->{$item} = $form->{$item};
- }
-
- $myconfig->save_member($memberfile, $userspath);
-
- if ($webdav) {
- @webdavdirs =
- qw(angebote bestellungen rechnungen anfragen lieferantenbestellungen einkaufsrechnungen);
- foreach $directory (@webdavdirs) {
- $file = "webdav/" . $directory . "/webdav-user";
- if ($myconfig->{$directory}) {
- open(HTACCESS, "$file") or die "cannot open webdav-user $!\n";
- while (<HTACCESS>) {
- ($login, $password) = split(/:/, $_);
- if ($login ne $form->{login}) {
- $newfile .= $_;
- }
- }
- close(HTACCESS);
- open(HTACCESS, "> $file") or die "cannot open webdav-user $!\n";
- $newfile .= $myconfig->{login} . ":" . $myconfig->{password} . "\n";
- print(HTACCESS $newfile);
- close(HTACCESS);
- } else {
- $form->{$directory} = 0;
- open(HTACCESS, "$file") or die "cannot open webdav-user $!\n";
- while (<HTACCESS>) {
- ($login, $password) = split(/:/, $_);
- if ($login ne $form->{login}) {
- $newfile .= $_;
- }
- }
- close(HTACCESS);
- open(HTACCESS, "> $file") or die "cannot open webdav-user $!\n";
- print(HTACCESS $newfile);
- close(HTACCESS);
- }
- }
- }