Bug 21605: (follow-up) Simple ternary boolean to number conversion
authorMarcel de Rooy <m.de.rooy@rijksmuseum.nl>
Thu, 13 Dec 2018 13:59:38 +0000 (14:59 +0100)
committerLucas Gass <lucas@bywatersolutions.com>
Thu, 10 Jan 2019 01:35:16 +0000 (01:35 +0000)
Imo it is much easier to do just "$a ? 1 : 0" than testing defined($a) etc.
in the additional loop.
Less code, more readable?

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 482b323da1e18324941963359b9a1bd96f297c44)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit fee85191b0be2690cbfada45f4eba54ef0e75c35)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>

admin/edi_accounts.pl

index 3eccb53..a6beaf0 100755 (executable)
@@ -81,17 +81,14 @@ else {
             download_directory => scalar $input->param('download_directory'),
             san                => scalar $input->param('san'),
             transport          => scalar $input->param('transport'),
+            quotes_enabled     => $input->param('quotes_enabled') ? 1 : 0,
+            invoices_enabled   => $input->param('invoices_enabled') ? 1 : 0,
+            orders_enabled     => $input->param('orders_enabled') ? 1 : 0,
+            responses_enabled  => $input->param('responses_enabled') ? 1 : 0,
+            auto_orders        => $input->param('auto_orders') ? 1 : 0,
             id_code_qualifier  => scalar $input->param('id_code_qualifier'),
             plugin             => scalar $input->param('plugin'),
         };
-        # ensure all capability fields set to binary 0 or 1
-        foreach my $capability
-        (qw( quotes_enabled invoices_enabled orders_enabled responses_enabled auto_orders)) {
-            $fields->{$capability} = defined $input->param($capability);
-            if ($fields->{$capability} != 1) {
-                $fields->{$capability} = 0;
-            }
-        }
 
         if ($id) {
             $schema->resultset('VendorEdiAccount')->search(