Währung in Verkaufs-/Einkaufsrechnungj
[kivitendo-erp.git] / bin / mozilla / is.pl
index 9d48cf2..56162d5 100644 (file)
@@ -90,6 +90,8 @@ sub edit {
 
   $main::auth->assert('invoice_edit');
 
+  $form->{taxincluded_changed_by_user} = 1;
+
   # show history button
   $form->{javascript} = qq|<script type="text/javascript" src="js/show_history.js"></script>|;
   #/show hhistory button
@@ -408,13 +410,7 @@ sub form_footer {
   IS->get_customer(\%myconfig, \%$form) if $form->{type} =~ /sales_(order|quotation)/;
 
   if ( $form->{vc} eq 'customer' && !$form->{taxincluded_changed_by_user} ) {
-    if ( $form->{taxincluded_checked} eq 'y' ) {
-      $form->{taxincluded} = 1;
-    } elsif ( $form->{taxincluded_checked} eq 'n' ) {
-      $form->{taxincluded} = 0;
-    } else {
-      $form->{taxincluded} = $myconfig{taxincluded_checked};
-    }
+    $form->{taxincluded} = defined($form->{taxincluded_checked}) ? $form->{taxincluded_checked} : $myconfig{taxincluded_checked};
   }
 
   foreach my $item (@{ $form->{taxaccounts_array} }) {
@@ -521,6 +517,9 @@ sub update {
   for my $i (1 .. $form->{paidaccounts}) {
     next unless $form->{"paid_$i"};
     map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(paid exchangerate);
+    if (!$form->{"forex_$i"}) {   #read exchangerate from input field (not hidden)
+      $form->{exchangerate} = $form->{"exchangerate_$i"};
+    } 
     $form->{"forex_$i"}        = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{"datepaid_$i"}, 'buy');
     $form->{"exchangerate_$i"} = $form->{"forex_$i"} if $form->{"forex_$i"};
   }