Order-Controller: Workflow -> *-Auftrag vorher Speichern
authorJan Büren <jan@kivitendo.de>
Wed, 13 Feb 2019 13:16:46 +0000 (14:16 +0100)
committerJan Büren <jan@kivitendo.de>
Wed, 13 Feb 2019 13:16:46 +0000 (14:16 +0100)
Ansonsten werden die cvars nicht übernommen.
Außerdem ist es konsistenter, da bei allen anderen
Workflow-Aktionen auch immer gespeichert wird (Rechnung oder LS).

SL/Controller/Order.pm
locale/de/all

index dec2ece..d461400 100644 (file)
@@ -1467,6 +1467,14 @@ sub save {
 
 sub workflow_sales_or_purchase_order {
   my ($self) = @_;
+  # always save
+  my $errors = $self->save();
+
+  if (scalar @{ $errors }) {
+    $self->js->flash('error', $_) foreach @{ $errors };
+    return $self->js->render();
+  }
+
 
   my $destination_type = $::form->{type} eq sales_quotation_type()   ? sales_order_type()
                        : $::form->{type} eq request_quotation_type() ? purchase_order_type()
@@ -1595,13 +1603,13 @@ sub setup_edit_action_bar {
           t8('Workflow'),
         ],
         action => [
-          t8('Sales Order'),
+          t8('Save and Sales Order'),
           submit   => [ '#order_form', { action => "Order/sales_order" } ],
           only_if  => (any { $self->type eq $_ } (sales_quotation_type(), purchase_order_type())),
           disabled => !$self->order->id ? t8('This object has not been saved yet.') : undef,
         ],
         action => [
-          t8('Purchase Order'),
+          t8('Save and Purchase Order'),
           submit   => [ '#order_form', { action => "Order/purchase_order" } ],
           only_if  => (any { $self->type eq $_ } (sales_order_type(), request_quotation_type())),
           disabled => !$self->order->id ? t8('This object has not been saved yet.') : undef,
index 186672b..ece3072 100755 (executable)
@@ -2736,8 +2736,10 @@ $self->{texts} = {
   'Save and E-mail'             => 'Speichern und E-Mail',
   'Save and Invoice'            => 'Speichern und Rechnung erfassen',
   'Save and Order'              => 'Speichern und Auftrag erfassen',
+  'Save and Purchase Order'     => 'Speichern und Lieferantenauftrag',
   'Save and Quotation'          => 'Speichern und Angebot',
   'Save and RFQ'                => 'Speichern und Lieferantenanfrage',
+  'Save and Sales Order'        => 'Speichern und Kundenauftrag',
   'Save and close'              => 'Speichern und schließen',
   'Save and execute'            => 'Speichern und ausführen',
   'Save and keep open'          => 'Speichern und geöffnet lassen',