]> wagnertech.de Git - kivitendo-erp.git/blobdiff - SL/Controller/Order.pm
Auftrags-Controller: Mehrfach-Artikelauswahl: Suchergebis auf 100 begrenzen.
[kivitendo-erp.git] / SL / Controller / Order.pm
index 968367637b92795a379d87abf54fb553e55a6d26..5c8607d6ce8d71a33966e7751d63035450f7fa14 100644 (file)
@@ -353,15 +353,27 @@ 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 $max_count = 100;
+  my $count = $_[0]->multi_items_models->count;
+
+  if ($count == 0) {
+    my $text = SL::Presenter::EscapedText->new(text => $::locale->text('No results.'));
+    $_[0]->render($text, { layout => 0 });
+  } elsif ($count > $max_count) {
+    my $text = SL::Presenter::EscapedText->new(text => $::locale->text('Too much results (#1 from #2).', $count, $max_count));
+    $_[0]->render($text, { layout => 0 });
+  } else {
+    my $multi_items = $_[0]->multi_items_models->get;
+    $_[0]->render('order/tabs/_multi_items_result', { layout => 0 },
+                  multi_items => $multi_items);
+  }
 }
 
 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) {