X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/e90048c8180f32f52f3f12ee52eb7269c4b27fcf..bc7681a9e57ab8518804417a7d2ca214d78cd744:/SL/AM.pm diff --git a/SL/AM.pm b/SL/AM.pm index 3fdf175cd..30b1d9301 100644 --- a/SL/AM.pm +++ b/SL/AM.pm @@ -482,16 +482,18 @@ sub delete_account { WHERE chart_id = ?|; do_query($form, $dbh, $query, $form->{id}); - # delete chart of account record - $query = qq|DELETE FROM chart - WHERE id = ?|; - do_query($form, $dbh, $query, $form->{id}); - # delete account taxkeys $query = qq|DELETE FROM taxkeys WHERE chart_id = ?|; do_query($form, $dbh, $query, $form->{id}); + # delete chart of account record + # last step delete chart, because we have a constraint + # to taxkeys + $query = qq|DELETE FROM chart + WHERE id = ?|; + do_query($form, $dbh, $query, $form->{id}); + # commit and redirect my $rc = $dbh->commit; $dbh->disconnect; @@ -1063,6 +1065,7 @@ sub save_preferences { my $user = SL::DB::Manager::AuthUser->find_by(login => $form->{login}); $user->update_attributes( config_values => { + %{ $user->config_values }, map { ($_ => $form->{$_}) } SL::DB::AuthUser::CONFIG_VARS(), }); @@ -1120,16 +1123,14 @@ sub closebooks { my ($query, @values); - if ($form->{revtrans}) { - $query = qq|UPDATE defaults SET closedto = NULL, revtrans = '1'|; + # is currently NEVER trueish (no more hidden revtrans in $form) + # if ($form->{revtrans}) { + # $query = qq|UPDATE defaults SET closedto = NULL, revtrans = '1'|; + # -> therefore you can only set this to false (which is already the default) + # and this flag is currently only checked in gl.pl. TOOD Can probably be removed - } elsif ($form->{closedto}) { $query = qq|UPDATE defaults SET closedto = ?, max_future_booking_interval = ?, revtrans = '0'|; - @values = (conv_date($form->{closedto}), conv_date($form->{max_future_booking_interval})); - - } else { - $query = qq|UPDATE defaults SET closedto = NULL, revtrans = '0'|; - } + @values = (conv_date($form->{closedto}), conv_i($form->{max_future_booking_interval})); # set close in defaults do_query($form, $dbh, $query, @values); @@ -1643,7 +1644,7 @@ sub save_tax { $chart_categories .= 'E' if $form->{expense}; $chart_categories .= 'C' if $form->{costs}; - my @values = ($form->{taxkey}, $form->{taxdescription}, $form->{rate}, $form->{chart_id}, $form->{chart_id}, $chart_categories); + my @values = ($form->{taxkey}, $form->{taxdescription}, $form->{rate}, conv_i($form->{chart_id}), conv_i($form->{chart_id}), $chart_categories); if ($form->{id} ne "") { $query = qq|UPDATE tax SET taxkey = ?, @@ -1670,7 +1671,7 @@ sub save_tax { } push(@values, $form->{id}); do_query($form, $dbh, $query, @values); - + foreach my $language_id (keys %{ $form->{translations} }) { GenericTranslations->save('dbh' => $dbh, 'translation_type' => 'SL::DB::Tax/taxdescription',