Mandantenkonfiguration: experimentelle Features einzeln an-/abschaltbar machen
authorBernd Bleßmann <bernd@kivitendo-premium.de>
Mon, 22 Oct 2018 12:57:03 +0000 (14:57 +0200)
committerBernd Bleßmann <bernd@kivitendo-premium.de>
Mon, 22 Oct 2018 12:57:03 +0000 (14:57 +0200)
es gibt nun "feature_experimental_order" und "feature_experimental_assortment"

angepasster cherry pick von odyn: bc94c40f2f64e7b40fbd90c49dbf41f86688c32d

33 files changed:
SL/Controller/CustomerVendor.pm
SL/Controller/DeliveryPlan.pm
SL/Controller/DeliveryValueReport.pm
SL/Controller/FinancialControllingReport.pm
SL/Controller/SellPriceInformation.pm
SL/Controller/ShopOrder.pm
SL/Controller/TopQuickSearch/OERecord.pm
SL/DB/MetaSetup/Default.pm
SL/FU.pm
SL/InstanceConfiguration.pm
SL/Presenter/Order.pm
bin/mozilla/ct.pl
bin/mozilla/do.pl
bin/mozilla/ic.pl
bin/mozilla/io.pl
bin/mozilla/oe.pl
locale/de/all
locale/en/all
menus/user/10-order-controller.yaml
sql/Pg-upgrade2/defaults_add_feature_experimental2.sql [new file with mode: 0644]
t/menu/parse_access_string.t
templates/webpages/client_config/_features.html
templates/webpages/client_config/_ranges_of_numbers.html
templates/webpages/customer_vendor/get_delivery.html
templates/webpages/customer_vendor_turnover/_list_open_orders.html
templates/webpages/customer_vendor_turnover/order_statistic.html
templates/webpages/customer_vendor_turnover/quotation_statistic.html
templates/webpages/delivery_plan/_filter.html
templates/webpages/delivery_value_report/_filter.html
templates/webpages/ic/generate_report_bottom.html
templates/webpages/ic/search.html
templates/webpages/mass_invoice_create_print_from_do/list_sales_delivery_orders.html
templates/webpages/requirement_spec_order/list.html

index 2d373c1..4812f1b 100644 (file)
@@ -281,7 +281,7 @@ sub _transaction {
   my $db = $self->is_vendor() ? 'vendor' : 'customer';
   my $action = 'add';
 
-  if ($::instance_conf->get_feature_experimental && 'oe.pl' eq $script) {
+  if ($::instance_conf->get_feature_experimental_order && 'oe.pl' eq $script) {
     $script = 'controller.pl';
     $action = 'Order/' . $action;
   }
index 95db7ff..aca9918 100644 (file)
@@ -369,7 +369,7 @@ sub link_to {
     my $vc     = $object->is_sales ? 'customer' : 'vendor';
     my $id     = $object->id;
 
-    if ($::instance_conf->get_feature_experimental) {
+    if ($::instance_conf->get_feature_experimental_order) {
       return "controller.pl?action=Order/$action&type=$type&id=$id";
     } else {
       return "oe.pl?action=$action&type=$type&vc=$vc&id=$id";
index 942b02a..4a7ffd1 100644 (file)
@@ -231,7 +231,7 @@ sub link_to {
     my $vc     = $object->is_sales ? 'customer' : 'vendor';
     my $id     = $object->id;
 
-    if ($::instance_conf->get_feature_experimental) {
+    if ($::instance_conf->get_feature_experimental_order) {
       return "controller.pl?action=Order/$action&type=$type&id=$id";
     } else {
       return "oe.pl?action=$action&type=$type&vc=$vc&id=$id";
index 31f60f1..f4f09ff 100644 (file)
@@ -278,7 +278,7 @@ sub link_to {
     my $type = $object->type;
     my $id   = $object->id;
 
-    if ($::instance_conf->get_feature_experimental) {
+    if ($::instance_conf->get_feature_experimental_order) {
       return "controller.pl?action=Order/$action&type=$type&id=$id";
     } else {
       return "oe.pl?action=$action&type=$type&vc=customer&id=$id";
index 1385fca..ccb0d5f 100644 (file)
@@ -140,7 +140,7 @@ sub link_to {
     my $vc     = $object->is_sales ? 'customer' : 'vendor';
     my $id     = $object->id;
 
-    if ($::instance_conf->get_feature_experimental) {
+    if ($::instance_conf->get_feature_experimental_order) {
       return "controller.pl?action=Order/$action&type=$type&id=$id";
     } else {
       return "oe.pl?action=$action&type=$type&vc=$vc&id=$id";
index 1503e6f..715f883 100644 (file)
@@ -156,7 +156,7 @@ sub action_transfer {
       $self->shop_order->save;
       $self->shop_order->link_to_record($order);
     }) || die $order->db->error;
-    my $order_controller = $::instance_conf->get_feature_experimental ? 'Order' :'oe.pl';
+    my $order_controller = $::instance_conf->get_feature_experimental_order ? 'Order' :'oe.pl';
     $self->redirect_to(controller => $order_controller, action => 'edit', type => 'sales_order', vc => 'customer', id => $order->id);
   }
 }
index ecbca13..d63dee0 100644 (file)
@@ -64,7 +64,7 @@ sub redirect_to_search {
 }
 
 sub redirect_to_object {
-  if ($::instance_conf->get_feature_experimental) {
+  if ($::instance_conf->get_feature_experimental_order) {
     SL::Controller::Base->new->url_for(
       controller => 'Order',
       action     => 'edit',
index d1f8db5..c994f46 100644 (file)
@@ -73,7 +73,8 @@ __PACKAGE__->meta->columns(
   feature_datev                             => { type => 'boolean', default => 'true', not_null => 1 },
   feature_erfolgsrechnung                   => { type => 'boolean', default => 'false', not_null => 1 },
   feature_eurechnung                        => { type => 'boolean', default => 'true', not_null => 1 },
-  feature_experimental                      => { type => 'boolean', default => 'true', not_null => 1 },
+  feature_experimental_assortment           => { type => 'boolean', default => 'true', not_null => 1 },
+  feature_experimental_order                => { type => 'boolean', default => 'true', not_null => 1 },
   feature_ustva                             => { type => 'boolean', default => 'true', not_null => 1 },
   fxgain_accno_id                           => { type => 'integer' },
   fxloss_accno_id                           => { type => 'integer' },
index 8f52ae4..b1eaf00 100644 (file)
--- a/SL/FU.pm
+++ b/SL/FU.pm
@@ -338,7 +338,7 @@ sub link_details {
   } elsif ($params{trans_type} eq 'sales_quotation') {
     my $script = 'oe.pl';
     my $action = 'edit';
-    if ($::instance_conf->get_feature_experimental) {
+    if ($::instance_conf->get_feature_experimental_order) {
       $script = 'controller.pl';
       $action = 'Order/edit';
     }
@@ -364,7 +364,7 @@ sub link_details {
   } elsif ($params{trans_type} eq 'sales_order') {
     my $script = 'oe.pl';
     my $action = 'edit';
-    if ($::instance_conf->get_feature_experimental) {
+    if ($::instance_conf->get_feature_experimental_order) {
       $script = 'controller.pl';
       $action = 'Order/edit';
     }
@@ -400,7 +400,7 @@ sub link_details {
   } elsif ($params{trans_type} eq 'request_quotation') {
     my $script = 'oe.pl';
     my $action = 'edit';
-    if ($::instance_conf->get_feature_experimental) {
+    if ($::instance_conf->get_feature_experimental_order) {
       $script = 'controller.pl';
       $action = 'Order/edit';
     }
@@ -412,7 +412,7 @@ sub link_details {
   } elsif ($params{trans_type} eq 'purchase_order') {
     my $script = 'oe.pl';
     my $action = 'edit';
-    if ($::instance_conf->get_feature_experimental) {
+    if ($::instance_conf->get_feature_experimental_order) {
       $script = 'controller.pl';
       $action = 'Order/edit';
     }
index 934cd77..72b3802 100644 (file)
@@ -234,9 +234,13 @@ Returns the configuration for storing documents in the corresponding WebDAV fold
 
 Returns the configuration for "vertreter"
 
-=item C<get_feature_experimental>
+=item C<get_feature_experimental_assortment>
 
-Returns the configuration for experimental features
+Returns the configuration for experimental feature "assortment"
+
+=item C<get_feature_experimental_order>
+
+Returns the configuration for experimental feature "order"
 
 =item C<get_parts_show_image>
 
index 5c381ad..35005a7 100644 (file)
@@ -45,7 +45,7 @@ sub _oe_record {
   my $link_start = '';
   my $link_end   = '';
   unless ($params{no_link}) {
-    my $action  = $::instance_conf->get_feature_experimental
+    my $action  = $::instance_conf->get_feature_experimental_order
                 ? 'controller.pl?action=Order/edit'
                 : 'oe.pl?action=edit';
     $link_start = '<a href="' . $action . '&amp;type=' . $type . '&amp;id=' . escape($order->id) . '">';
index 079b24c..558e524 100644 (file)
@@ -286,7 +286,7 @@ sub list_names {
     }
 
     my $base_url              = build_std_url("script=$ref->{module}.pl", 'action=edit', 'id=' . E($ref->{invid}), 'callback', @hidden_nondefault);
-    if ($::instance_conf->get_feature_experimental) {
+    if ($::instance_conf->get_feature_experimental_order) {
       if ('oe' eq $ref->{module}) {
         $base_url             = build_std_url("script=controller.pl", 'action=Order/edit', 'id=' . E($ref->{invid}), 'callback', @hidden_nondefault);
       }
index 7efc622..1ce19d6 100644 (file)
@@ -840,7 +840,7 @@ sub orders {
   my $callback = $form->escape($href);
 
   my $edit_url       = build_std_url('action=edit', 'type', 'vc');
-  my $edit_order_url = ($::instance_conf->get_feature_experimental)
+  my $edit_order_url = ($::instance_conf->get_feature_experimental_order)
                      ? build_std_url('script=controller.pl', 'action=Order/edit', 'type=' . ($form->{type} eq 'sales_delivery_order' ? 'sales_order' : 'purchase_order'))
                      : build_std_url('script=oe.pl',         'action=edit',       'type=' . ($form->{type} eq 'sales_delivery_order' ? 'sales_order' : 'purchase_order'));
 
index b0d3887..dd183b2 100644 (file)
@@ -541,13 +541,13 @@ sub generate_report {
       # | ist bestellt  | Von Kunden bestellt |  -> edit_oe_ord_link
       # | Anfrage       | Angebot             |  -> edit_oe_quo_link
 
-      my $edit_oe_ord_link = ($::instance_conf->get_feature_experimental)
+      my $edit_oe_ord_link = ($::instance_conf->get_feature_experimental_order)
                            ? build_std_url("script=controller.pl", 'action=Order/edit',
                                            'type=' . E($ref->{cv} eq 'vendor' ? 'purchase_order' : 'sales_order'),        'id=' . E($ref->{trans_id}), 'callback')
                            : build_std_url("script=oe.pl",         'action=edit',
                                            'type=' . E($ref->{cv} eq 'vendor' ? 'purchase_order' : 'sales_order'),        'id=' . E($ref->{trans_id}), 'callback');
 
-      my $edit_oe_quo_link = ($::instance_conf->get_feature_experimental)
+      my $edit_oe_quo_link = ($::instance_conf->get_feature_experimental_order)
                            ? build_std_url("script=controller.pl", 'action=Order/edit',
                                            'type=' . E($ref->{cv} eq 'vendor' ? 'request_quotation' : 'sales_quotation'), 'id=' . E($ref->{trans_id}), 'callback')
                            : build_std_url("script=oe.pl",         'action=edit',
index 1d69289..86010b1 100644 (file)
@@ -910,7 +910,7 @@ sub order {
 
   _order();
 
-  if ($::instance_conf->get_feature_experimental) {
+  if ($::instance_conf->get_feature_experimental_order) {
     my $order = _make_record();
     $order->globalproject_id(undef) if !$order->globalproject_id;
     $order->payment_id(undef)       if !$order->payment_id;
index 04cb626..7aeb1b9 100644 (file)
@@ -1228,7 +1228,7 @@ sub orders {
 
   my $idx = 1;
 
-  my $edit_url = ($::instance_conf->get_feature_experimental)
+  my $edit_url = ($::instance_conf->get_feature_experimental_order)
                ? build_std_url('script=controller.pl', 'action=Order/edit', 'type')
                : build_std_url('action=edit', 'type', 'vc');
 
@@ -2138,7 +2138,7 @@ sub report_for_todo_list {
   my $content;
 
   if (@{ $quotations }) {
-    my $edit_url = ($::instance_conf->get_feature_experimental)
+    my $edit_url = ($::instance_conf->get_feature_experimental_order)
                  ? build_std_url('script=controller.pl', 'action=Order/edit')
                  : build_std_url('script=oe.pl', 'action=edit');
 
index 79784f9..6d3b7cb 100755 (executable)
@@ -1224,7 +1224,6 @@ $self->{texts} = {
   'Employees'                   => 'Benutzer',
   'Empty selection for warehouse will not be added, even if the old bin is still visible (use back and forth to edit again).' => 'Leere Lager-Auswahl wird ignoriert, selbst wenn noch ein Lagerplatz ausgewählt ist. Alle Daten können durch zurück und vorwärts korrigiert werden.',
   'Empty transaction!'          => 'Buchung ist leer!',
-  'Enable experimental features' => 'Experimentelle Features einschalten',
   'Enabled Quick Searched'      => 'Aktivierte Schnellsuchen',
   'Enabled modules'             => 'Aktivierte Module',
   'End date'                    => 'Enddatum',
@@ -1355,7 +1354,6 @@ $self->{texts} = {
   'Expense Account'             => 'Aufwandskonto',
   'Expense/Asset'               => 'Aufwand/Anlagen',
   'Experimental Features'       => 'Experimentelle Features',
-  'Experimental features are:'  => 'Experimentelle Features sind:',
   'Export'                      => 'Export',
   'Export Buchungsdaten'        => 'Export Buchungsdaten',
   'Export Number'               => 'Exportnummer',
index 8d898c4..c4727ca 100644 (file)
@@ -1223,7 +1223,6 @@ $self->{texts} = {
   'Employees'                   => '',
   'Empty selection for warehouse will not be added, even if the old bin is still visible (use back and forth to edit again).' => '',
   'Empty transaction!'          => '',
-  'Enable experimental features' => '',
   'Enabled Quick Searched'      => '',
   'Enabled modules'             => '',
   'End date'                    => '',
@@ -1354,7 +1353,6 @@ $self->{texts} = {
   'Expense Account'             => '',
   'Expense/Asset'               => '',
   'Experimental Features'       => '',
-  'Experimental features are:'  => '',
   'Export'                      => '',
   'Export Buchungsdaten'        => '',
   'Export Number'               => '',
index fc0bb66..f4ec4d1 100644 (file)
@@ -1,22 +1,22 @@
 - parent: ar
   id: ar_add_quotation
-  access: sales_quotation_edit & (!client/feature_experimental)
+  access: sales_quotation_edit & (!client/feature_experimental_order)
 - parent: ar
   id: ar_add_sales_order
-  access: sales_order_edit & (!client/feature_experimental)
+  access: sales_order_edit & (!client/feature_experimental_order)
 - parent: ap
   id: ap_add_rfq
-  access: request_quotation_edit & (!client/feature_experimental)
+  access: request_quotation_edit & (!client/feature_experimental_order)
 - parent: ap
   id: ap_add_purchase_order
-  access: purchase_order_edit & (!client/feature_experimental)
+  access: purchase_order_edit & (!client/feature_experimental_order)
 
 - parent: ar
   id: ar_add_quotation_experimental
   name: Add Quotation
   icon: quotation_add
   order: 250
-  access: sales_quotation_edit & client/feature_experimental
+  access: sales_quotation_edit & client/feature_experimental_order
   params:
     action: Order/add
     type: sales_quotation
@@ -25,7 +25,7 @@
   name: Add Sales Order
   icon: sales_order_add
   order: 350
-  access: sales_order_edit & client/feature_experimental
+  access: sales_order_edit & client/feature_experimental_order
   params:
     action: Order/add
     type: sales_order
@@ -35,7 +35,7 @@
   name: Add RFQ
   icon: rfq_add
   order: 150
-  access: request_quotation_edit & client/feature_experimental
+  access: request_quotation_edit & client/feature_experimental_order
   params:
     action: Order/add
     type: request_quotation
@@ -44,7 +44,7 @@
   name: Add Purchase Order
   icon: purchase_order_add
   order: 250
-  access: purchase_order_edit & client/feature_experimental
+  access: purchase_order_edit & client/feature_experimental_order
   params:
     action: Order/add
     type: purchase_order
diff --git a/sql/Pg-upgrade2/defaults_add_feature_experimental2.sql b/sql/Pg-upgrade2/defaults_add_feature_experimental2.sql
new file mode 100644 (file)
index 0000000..66136c9
--- /dev/null
@@ -0,0 +1,8 @@
+-- @tag: defaults_add_feature_experimental2
+-- @description: experimentelle Features mit einzelnen Optionen
+-- @depends: defaults_add_feature_experimental
+
+ALTER TABLE defaults RENAME COLUMN feature_experimental TO feature_experimental_order;
+ALTER TABLE defaults ADD    COLUMN feature_experimental_assortment BOOLEAN NOT NULL DEFAULT TRUE;
+
+UPDATE defaults SET feature_experimental_assortment = feature_experimental_order;
index fd6e790..5212699 100644 (file)
@@ -54,7 +54,7 @@ ok($menu->parse_access_string(\%node), 'parenthesis 1');
 $node{access} = '(no_such_right & sales_order_edit | (no_such_right & sales_order_edit))';
 ok(!$menu->parse_access_string(\%node), 'parenthesis 2');
 
-$node{access} = 'sales_quotation_edit & client/feature_experimental';
+$node{access} = 'sales_quotation_edit & client/feature_experimental_order';
 ok($menu->parse_access_string(\%node), 'client');
 
 $node{access} = '!no_such_right';
@@ -72,7 +72,7 @@ ok($menu->parse_access_string(\%node), 'parenthesis with negation 1');
 $node{access} = '(no_such_right & sales_order_edit | (!no_such_right | !sales_order_edit))';
 ok($menu->parse_access_string(\%node), 'parenthesis with negation 2');
 
-$node{access} = 'sales_quotation_edit & !client/feature_experimental';
+$node{access} = 'sales_quotation_edit & !client/feature_experimental_order';
 ok(!$menu->parse_access_string(\%node), 'client negation');
 
 done_testing;
index 045c542..4729d8c 100644 (file)
   </tr>
   <tr><td class="listheading" colspan="4">[% LxERP.t8("Experimental Features") %]</td></tr>
   <tr>
-   <td align="right">[% LxERP.t8('Enable experimental features') %]</td>
-   <td>[% L.yes_no_tag('defaults.feature_experimental', SELF.defaults.feature_experimental) %]</td>
-   <td>[% LxERP.t8('Experimental features are:') %] [% LxERP.t8('new order controller') %], [% LxERP.t8('Assortment') %]</td>
+   <td align="right">[% LxERP.t8('new order controller') %]</td>
+   <td>[% L.yes_no_tag('defaults.feature_experimental_order', SELF.defaults.feature_experimental_order) %]</td>
+  </tr>
+  <tr>
+   <td align="right">[% LxERP.t8('Assortment') %]</td>
+   <td>[% L.yes_no_tag('defaults.feature_experimental_assortment', SELF.defaults.feature_experimental_assortment) %]</td>
   </tr>
 
  <tr><td class="listheading" colspan="4">[% LxERP.t8("Shipped Quantity Algorithm") %]</td></tr>
index 758c7d9..90c0751 100644 (file)
@@ -44,7 +44,7 @@
   <tr>
    <td align="right" nowrap>[% LxERP.t8('Last Sales Delivery Order Number') %]</td>
    <td>[% L.input_tag("defaults.sdonumber", SELF.defaults.sdonumber, size="15") %]</td>
-   [%- IF INSTANCE_CONF.get_feature_experimental %]
+   [%- IF INSTANCE_CONF.get_feature_experimental_assortment %]
    <td align="right" nowrap>[% LxERP.t8('Last Assortment Number') %]</td>
    <td>[% L.input_tag("defaults.assortmentnumber", SELF.defaults.assortmentnumber, size="15") %]</td>
    [%- END -%]
index debe697..fffb3ce 100644 (file)
@@ -27,7 +27,7 @@
             <tr class="listrow[% loop.count % 2 %]">
               <td>[% HTML.escape(row.shiptoname) UNLESS loop.prev.shiptoname == row.shiptoname %]&nbsp;</td>
               <td>[% IF row.id %]<a href='[% row.script %].pl?action=edit&id=[% HTML.escape(row.id) %]'>[% END %][% HTML.escape(row.invnumber)   || '&nbsp;' %][% IF row.id %]</a>[% END %]</td>
-              [%- IF INSTANCE_CONF.get_feature_experimental -%]
+              [%- IF INSTANCE_CONF.get_feature_experimental_order -%]
                 <td>[% IF row.oe_id %]<a href='controller.pl?action=Order/edit&type=[% IF SELF.is_customer %]sales_order[% ELSE %]purchase_order[% END %]&id=[% HTML.escape(row.oe_id) %]'>[% END %][% HTML.escape(row.ordnumber)   || '&nbsp;' %][% IF row.oe_id %]</a>[% END %]</td>
               [%- ELSE -%]
                 <td>[% IF row.oe_id %]<a href='oe.pl?action=edit&type=[% IF SELF.is_customer %]sales_order[% ELSE %]purchase_order[% END %]&vc=customer&id=[% HTML.escape(row.oe_id) %]'>[% END %][% HTML.escape(row.ordnumber)   || '&nbsp;' %][% IF row.oe_id %]</a>[% END %]</td>
index ae20d68..0ebf8a1 100644 (file)
@@ -20,7 +20,7 @@
       <tr class="listrow[% loop.count % 2 %]">
         <td>[% IF row.quotation %]
           [% IF FORM.db == 'customer' %][% 'Sales quotation' | $T8 %][% ELSE %][% 'RFQ' | $T8 %][% END %]</td>
-              [%- IF INSTANCE_CONF.get_feature_experimental -%]
+              [%- IF INSTANCE_CONF.get_feature_experimental_order -%]
                 <td>[% IF row.id %]<a href='controller.pl?action=Order/edit&type=[% IF FORM.db == "customer" %]sales_quotation[% ELSE %]request_quotation[% END %]&id=[% HTML.escape(row.id) %]'>
                     [% END %][% HTML.escape(row.quonumber)   || '&nbsp;' %][% IF row.id %]</a>[% END %]</td>
               [%- ELSE -%]
@@ -29,7 +29,7 @@
               [%- END -%]
             [% ELSE %]
             [% IF FORM.db == 'customer' %][% 'Sales Order' | $T8 %][% ELSE %][% 'Purchase Order' | $T8 %][% END %]</td>
-              [%- IF INSTANCE_CONF.get_feature_experimental -%]
+              [%- IF INSTANCE_CONF.get_feature_experimental_order -%]
                 <td>[% IF row.id %]<a href='controller.pl?action=Order/edit&type=[% IF FORM.db == "customer" %]sales_order[% ELSE %]purchase_order[% END %]&id=[% HTML.escape(row.id) %]'>
                     [% END %][% HTML.escape(row.ordnumber)   || '&nbsp;' %][% IF row.id %]</a>[% END %]</td>
               [%- ELSE -%]
index 151843a..77aefc0 100644 (file)
@@ -15,7 +15,7 @@
 
       [%- FOREACH row = orders %]
       <tr class="listrow[% loop.count % 2 %]">
-        [%- IF INSTANCE_CONF.get_feature_experimental -%]
+        [%- IF INSTANCE_CONF.get_feature_experimental_order -%]
           <td>[% IF row.id %]<a href='controller.pl?action=Order/edit&type=[% IF FORM.db == "customer" %]sales_order[% ELSE %]purchase_order[% END %]&id=[% HTML.escape(row.id) %]'>[% END %][% HTML.escape(row.ordnumber)   || '&nbsp;' %][% IF row.id %]</a>[% END %]</td>
         [%- ELSE -%]
           <td>[% IF row.id %]<a href='oe.pl?action=edit&type=[% IF FORM.db == "customer" %]sales_order[% ELSE %]purchase_order[% END %]&vc=[% FORM.db %]&id=[% HTML.escape(row.oe_id) %]'>[% END %][% HTML.escape(row.ordnumber)   || '&nbsp;' %][% IF row.id %]</a>[% END %]</td>
index 3ca521d..0c37bd5 100644 (file)
@@ -15,7 +15,7 @@
 
       [%- FOREACH row = orders %]
       <tr class="listrow[% loop.count % 2 %]">
-        [%- IF INSTANCE_CONF.get_feature_experimental -%]
+        [%- IF INSTANCE_CONF.get_feature_experimental_order -%]
           <td>[% IF row.id %]<a href='controller.pl?action=Order/edit&type=[% IF FORM.db == "customer" %]sales_quotation[% ELSE %]request_quotation[% END %]&id=[% HTML.escape(row.id) %]'>
               [% END %][% HTML.escape(row.quonumber)   || '&nbsp;' %][% IF row.id %]</a>[% END %]</td>
         [%- ELSE -%]
index 65ed964..55db124 100644 (file)
@@ -92,7 +92,7 @@
      [% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.part,     value='part',     label=LxERP.t8('Part')) %]
      [% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.service,  value='service',  label=LxERP.t8('Service')) %]
      [% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.assembly, value='assembly', label=LxERP.t8('Assembly')) %]
-     [%- IF INSTANCE_CONF.get_feature_experimental %]
+     [%- IF INSTANCE_CONF.get_feature_experimental_assortment %]
        [% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.assortment, value='assortment', label=LxERP.t8('Assortment')) %]
      [% END %]
    </td>
index 3661464..d16a9f2 100644 (file)
@@ -84,7 +84,7 @@
      [% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.part,     value='part',     label=LxERP.t8('Part')) %]
      [% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.service,  value='service',  label=LxERP.t8('Service')) %]
      [% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.assembly, value='assembly', label=LxERP.t8('Assembly')) %]
-     [%- IF INSTANCE_CONF.get_feature_experimental %]
+     [%- IF INSTANCE_CONF.get_feature_experimental_assortment %]
        [% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.assortment, value='assortment', label=LxERP.t8('Assortment')) %]
      [% END %]
    </td>
index 25009f6..9dc3ea8 100644 (file)
@@ -23,7 +23,7 @@
      <td>[%- 'Service (typeabbreviation)'    | $T8 %]</td>
      <td>[%- 'Service'                       | $T8 %]</td>
     </tr>
-    [%- IF INSTANCE_CONF.get_feature_experimental %]
+    [%- IF INSTANCE_CONF.get_feature_experimental_assortment %]
     <tr class="listrow1">
      <td>[%- 'Assortment (typeabbreviation)' | $T8 %]</td>
      <td>[%- 'Assortment'                    | $T8 %]</td>
index 0b3dd08..5847eb9 100644 (file)
@@ -38,7 +38,7 @@
           <input name="l_assembly" id="l_assembly" class="checkbox" type="checkbox" value="Y" checked>
           <label for="l_assembly">[% 'Assembly' | $T8 %]</label>
         </td>
-        [%- IF INSTANCE_CONF.get_feature_experimental %]
+        [%- IF INSTANCE_CONF.get_feature_experimental_assortment %]
         <td>
           <input name="l_assortment" id="l_assortment" class="checkbox" type="checkbox" value="Y" checked>
           <label for="l_assortment">[% 'Assortment' | $T8 %]</label>
index f4a8c7a..b020743 100644 (file)
@@ -36,7 +36,7 @@
       <td>[% L.checkbox_tag('id[]', value=sales_delivery_order.id, "data-checkall"=1) %]</td>
       <td>[% HTML.escape(sales_delivery_order.transdate_as_date) %]</td>
       <td>[% L.link(SELF.url_for(controller="do.pl", action="edit", type="sales_delivery_order", id=sales_delivery_order.id), sales_delivery_order.donumber) %]</td>
-      [%- IF INSTANCE_CONF.get_feature_experimental -%]
+      [%- IF INSTANCE_CONF.get_feature_experimental_order -%]
         <td>[% L.link(SELF.url_for(controller="controller.pl", action="Order/edit", type="sales_order", id=sales_delivery_order.sales_order.id), sales_delivery_order.ordnumber) %]</td>
       [%- ELSE -%]
         <td>[% L.link(SELF.url_for(controller="oe.pl", action="edit", type="sales_order", id=sales_delivery_order.sales_order.id), sales_delivery_order.ordnumber) %]</td>
index 3ee5f0b..d1c2278 100644 (file)
@@ -79,7 +79,7 @@
       [% END %]
      </td>
      <td>
-      [%- IF INSTANCE_CONF.get_feature_experimental -%]
+      [%- IF INSTANCE_CONF.get_feature_experimental_order -%]
         <a href="controller.pl?action=Order/edit&id=[% HTML.url(rs_order.order_id) %]&type=[% HTML.url(rs_order.order.type) %]">
       [%- ELSE -%]
         <a href="oe.pl?action=edit&id=[% HTML.url(rs_order.order_id) %]&type=[% HTML.url(rs_order.order.type) %]">