print_form: Extension war vor -r3314 standard auf "html", wurde dann durch anderen...
[kivitendo-erp.git] / bin / mozilla / oe.pl
index b3a6568..b1845ab 100644 (file)
@@ -634,7 +634,7 @@ sub search {
 
   $form->header();
 
-  print $form->parse_html_template('oe/search');
+  print $form->parse_html_template('oe/search', { %myconfig });
 
   $lxdebug->leave_sub();
 }
@@ -1612,7 +1612,7 @@ sub poso {
                                 ordnumber);
 
   for $i (1 .. $form->{rowcount}) {
-    map { $form->{"${_}_${i}"} = $form->parse_amount(\%myconfig, $form->{"${_}_${i}"}) if ($form->{"${_}_${i}"}) } qw(ship qty sellprice listprice basefactor);
+    map { $form->{"${_}_${i}"} = $form->parse_amount(\%myconfig, $form->{"${_}_${i}"}) if ($form->{"${_}_${i}"}) } qw(ship qty sellprice listprice basefactor discount);
   }
 
   my %saved_vars = map { $_ => $form->{$_} } grep { $form->{$_} } qw(currency);
@@ -1623,6 +1623,12 @@ sub poso {
 
   &prepare_order;
 
+  # prepare_order assumes that the discount is in db-notation (0.05) and not user-notation (5)
+  # and therefore multiplies the values by 100 in the case of reading from db or making an order from several quotation, so we convert this back into percent-notation for the user interface by multiplying with 0.01
+  for $i (1 .. $form->{rowcount}) {
+    $form->{"discount_$i"}  = $form->format_amount(\%myconfig, $form->{"discount_$i"} * 0.01);
+  };
+
   # format amounts
   for $i (1 .. $form->{rowcount} - 1) {
     map { $form->{"${_}_$i"} =~ s/\"/"/g } qw(partnumber description unit);
@@ -1651,6 +1657,7 @@ sub delivery_order {
 
   require "bin/mozilla/do.pl";
 
+  $form->{script}               = 'do.pl';
   $form->{cp_id}               *= 1;
   $form->{convert_from_oe_ids}  = $form->{id};
   $form->{transdate}            = $form->current_date(\%myconfig);
@@ -1663,7 +1670,7 @@ sub delivery_order {
   delete @{$form}{qw(id subject message cc bcc printed emailed queued creditlimit creditremaining discount tradediscount oldinvtotal closed delivered)};
 
   for $i (1 .. $form->{rowcount}) {
-    map { $form->{"${_}_${i}"} = $form->parse_amount(\%myconfig, $form->{"${_}_${i}"}) if ($form->{"${_}_${i}"}) } qw(ship qty sellprice listprice basefactor);
+    map { $form->{"${_}_${i}"} = $form->parse_amount(\%myconfig, $form->{"${_}_${i}"}) if ($form->{"${_}_${i}"}) } qw(ship qty sellprice listprice basefactor discount);
   }
 
   my %old_values = map { $_ => $form->{$_} } qw(customer_id oldcustomer customer vendor_id oldvendor vendor);