]> wagnertech.de Git - mfinanz.git/blobdiff - SL/Controller/Order.pm
Auftrags-Controller: Mehrfach-Artikelauswahl: Ergebnis nur rendern, wenn Artikel da
[mfinanz.git] / SL / Controller / Order.pm
index 3203485fa7d2dcf99d4b0397c2a8411cf9675711..47880661465fb9b9993dc50b0d4128c7bca29d21 100644 (file)
@@ -295,13 +295,18 @@ sub action_customer_vendor_changed {
                               : $::myconfig{taxincluded_checked});
   }
 
+  $self->order->payment_id($self->order->$cv_method->payment_id);
+  $self->order->delivery_term_id($self->order->$cv_method->delivery_term_id);
+
   $self->_recalc();
 
   $self->js
-    ->replaceWith('#order_cp_id',       $self->build_contact_select)
-    ->replaceWith('#order_shipto_id',   $self->build_shipto_select)
-    ->val(        '#order_taxzone_id',  $self->order->taxzone_id)
-    ->val(        '#order_taxincluded', $self->order->taxincluded)
+    ->replaceWith('#order_cp_id',            $self->build_contact_select)
+    ->replaceWith('#order_shipto_id',        $self->build_shipto_select)
+    ->val(        '#order_taxzone_id',       $self->order->taxzone_id)
+    ->val(        '#order_taxincluded',      $self->order->taxincluded)
+    ->val(        '#order_payment_id',       $self->order->payment_id)
+    ->val(        '#order_delivery_term_id', $self->order->delivery_term_id)
     ->focus(      '#order_' . $self->cv . '_id');
 
   $self->_js_redisplay_amounts_and_taxes;
@@ -348,15 +353,20 @@ sub action_show_multi_items_dialog {
 }
 
 sub action_multi_items_update_result {
-  $_[0]->render('order/tabs/_multi_items_result', { layout => 0 },
-                multi_items => $_[0]->multi_items_models->get);
+  my $multi_items = $_[0]->multi_items_models->get;
+  if (scalar @{$multi_items}) {
+    $_[0]->render('order/tabs/_multi_items_result', { layout => 0 },
+                  multi_items => $multi_items);
+  } else {
+    $_[0]->render(\'', { layout => 0 }); # ') make emacs happy
+  }
 }
 
 sub action_add_multi_items {
   my ($self) = @_;
 
-  my @form_attr = grep { $_->{qty} } @{ $::form->{add_multi_items} };
-  return unless scalar @form_attr;
+  my @form_attr = grep { $_->{qty_as_number} } @{ $::form->{add_multi_items} };
+  return $self->js->render() unless scalar @form_attr;
 
   my @items;
   foreach my $attr (@form_attr) {