enable CardFortress in test database, #71513
[freeside.git] / httemplate / elements / tr-select-discount.html
index df221da..ee86251 100644 (file)
@@ -6,11 +6,11 @@
 % } else { 
 
   <TR>
-    <TD ALIGN="right"><% $opt{'label'} || '<B>Discount</B>' %></TD>
+    <TD ALIGN="right" WIDTH="275"><% $opt{'label'} || '<B>'.emt('Discount').'</B>' %></TD>
     <TD <% $colspan %>>
       <% include( '/elements/select-discount.html',
                     'curr_value' => $discountnum,
-                    'onchange'   => $name.'_changed',
+                    'onchange'   => $onchange,
                     %opt,
                 )
       %>
@@ -19,7 +19,7 @@
 
 % # a weird kind of false laziness w/edit/discount.html
 
-  <INPUT TYPE="hidden" NAME="<% $name %>_disabled" VALUE="Y">
+% #  <INPUT TYPE="hidden" NAME="<% $name %>_disabled" VALUE="Y">
 
 
   <% include( '/elements/tr-select.html',
                 'field'      => $name. '__type',
                 'id'         => $name. '__type',
                 'options'    => \@_type_options,
-                #XXX 'curr_value' => 
-                'onchange'   => '_type_changed',
+                'curr_value' => scalar($cgi->param($name.'__type')),
+                'onchange'   => $name.'__type_changed',
                 'colspan'    => $opt{'colspan'},
             )
   %>
 
   <% include( '/elements/tr-input-money.html',
-                'label'      => '<B>Discount Amount</B>',
+                'label'      => '<B>Discount Amount&nbsp;</B>',
                 'field'      => $name. '_amount',
                 'id'         => $name. '_amount',
                 'default'    => '0.00',
-                #XXX 'curr_value' =>
+                'curr_value' => scalar($cgi->param($name.'_amount')),
                 'colspan'    => $opt{'colspan'},
             )
   %>
                 'field'      => $name. '_percent',
                 'id'         => $name. '_percent',
                 'default'    => '0',
-                #XXX 'curr_value' =>
+                'curr_value' => scalar($cgi->param($name.'_percent')),
                 'colspan'    => $opt{'colspan'},
             )
   %>
 
   <% include( '/elements/tr-input-text.html',
-                'label'   => '<B>Discount # of Months</B>',
+                'label'   => '<B>Discount duration (months)</B>',
                 'field'   => $name. '_months',
                 'id'      => $name. '_months',
                 'size'    => 2,
                 'postfix' => qq(<FONT SIZE="-1" ID="${name}_months_postfix"><I>(blank for non-expiring discount)</I></FONT>),
-                #XXX 'curr_value' =>
+                'curr_value' => scalar($cgi->param($name.'_months')),
                 'colspan'    => $opt{'colspan'},
            )
   %>
 
+  <% include( '/elements/tr-checkbox.html',
+                'label'     => '<B>Apply discount to setup fee</B>',
+                'field'     => $name.'_setup',
+                'id'        => $name.'_setup',
+                'curr_value' => scalar($cgi->param($name.'_setup')),
+                'value'     => 'Y',
+                'colspan'    => $opt{'colspan'},
+            )
+  %>
+
+%#  <% include( '/elements/tr-checkbox.html',
+%#                'label'     => '<B>Apply discount to add-on packages</B>',
+%#                'field'     => $name.'_linked',
+%#                'id'        => $name.'_linked',
+%#                'curr_value' => scalar($cgi->param($name.'_linked')),
+%#                'value'     => 'Y',
+%#                'colspan'    => $opt{'colspan'},
+%#            )
+%#  %>
+
   <SCRIPT TYPE="text/javascript">
 
 %   my $ge = 'document.getElementById';
     function <% $name %>_changed(what) {
       var <% $name %> = what.options[what.selectedIndex].value;
 
-      if ( <% $name %> == '-1' ) {
+      if ( <% $name %> == '-1' && ! what.disabled ) {
         <% $ge %>('<% $name %>__type_label0').style.display = '';
         <% $ge %>('<% $name %>__type_label0').style.visibility = '';
         <% $ge %>('<% $name %>__type').style.display = '';
         <% $ge %>('<% $name %>__type').style.visibility = '';
-%       #XXX retrieve previous visibility for amount, percent :/
+
+        <% $name %>__type_changed( <% $ge %>('<% $name %>__type') );
+
         <% $ge %>('<% $name %>_months_label0').style.display = '';
         <% $ge %>('<% $name %>_months_label0').style.visibility = '';
         <% $ge %>('<% $name %>_months').style.display = '';
         <% $ge %>('<% $name %>_months').style.visibility = '';
         <% $ge %>('<% $name %>_months_postfix').style.display = '';
         <% $ge %>('<% $name %>_months_postfix').style.visibility = '';
+        <% $ge %>('<% $name %>_setup_label0').style.display = '';
+        <% $ge %>('<% $name %>_setup_label0').style.visibility = '';
+        <% $ge %>('<% $name %>_setup').style.display = '';
+        <% $ge %>('<% $name %>_setup').style.visibility = '';
       } else {
 
         <% $ge %>('<% $name %>__type_label0').style.display = 'none';
         <% $ge %>('<% $name %>__type').style.display = 'none';
         <% $ge %>('<% $name %>__type').style.visibility = 'hidden';
 
-%       #XXX save visibility settings for amount, percent :/
-        <% $ge %>('<% $name %>_amount_label0').style.display = 'none';
-        <% $ge %>('<% $name %>_amount_label0').style.visibility = 'hidden';
-        <% $ge %>('<% $name %>_amount').style.display = 'none';
-        <% $ge %>('<% $name %>_amount').style.visibility = 'hidden';
-        <% $ge %>('<% $name %>_amount_input0').style.display = 'none';
-        <% $ge %>('<% $name %>_amount_input0').style.visibility = 'hidden';
-        <% $ge %>('<% $name %>_percent_label0').style.display = 'none';
-        <% $ge %>('<% $name %>_percent_label0').style.visibility = 'hidden';
-        <% $ge %>('<% $name %>_percent').style.display = 'none';
-        <% $ge %>('<% $name %>_percent').style.visibility = 'hidden';
-        <% $ge %>('<% $name %>_percent_input0').style.display = 'none';
-        <% $ge %>('<% $name %>_percent_input0').style.visibility = 'hidden';
+        <% $name %>__type_changed( <% $ge %>('<% $name %>__type') );
 
         <% $ge %>('<% $name %>_months_label0').style.display = 'none';
         <% $ge %>('<% $name %>_months_label0').style.visibility = 'hidden';
         <% $ge %>('<% $name %>_months').style.visibility = 'hidden';
         <% $ge %>('<% $name %>_months_postfix').style.display = 'none';
         <% $ge %>('<% $name %>_months_postfix').style.visibility = 'hidden';
+        
+        <% $ge %>('<% $name %>_setup_label0').style.display = 'none';
+        <% $ge %>('<% $name %>_setup_label0').style.visibility = 'hidden';
+        <% $ge %>('<% $name %>_setup').style.display = 'none';
+        <% $ge %>('<% $name %>_setup').style.visibility = 'hidden';
 
       }
 
     }
 
     function <% $name %>__type_changed(what) {
-      var _type = what.options[what.selectedIndex].value;
+      var <% $name %>__type = what.options[what.selectedIndex].value;
 
-      if ( <% $name %>__type == '<% $select %>' ) {
+      if ( <% $name %>__type == '<% $select %>' || what.style.display == 'none' ) {
         <% $ge %>('<% $name %>_amount_label0').style.display = 'none';
         <% $ge %>('<% $name %>_amount_label0').style.visibility = 'hidden';
-        <% $ge %>('<% $name %>_amount').style.display = 'none';
-        <% $ge %>('<% $name %>_amount').style.visibility = 'hidden';
+        <% $ge %>('<% $name %>_amount_input0').style.display = 'none';
+        <% $ge %>('<% $name %>_amount_input0').style.visibility = 'hidden';
         <% $ge %>('<% $name %>_percent_label0').style.display = 'none';
         <% $ge %>('<% $name %>_percent_label0').style.visibility = 'hidden';
-        <% $ge %>('<% $name %>_percent').style.display = 'none';
-        <% $ge %>('<% $name %>_percent').style.visibility = 'hidden';
+        <% $ge %>('<% $name %>_percent_input0').style.display = 'none';
+        <% $ge %>('<% $name %>_percent_input0').style.visibility = 'hidden';
+//        <% $ge %>('<% $name %>_linked_label0').style.display = 'none';
+//        <% $ge %>('<% $name %>_linked_label0').style.visibility = 'hidden';
+//        <% $ge %>('<% $name %>_linked').style.display = 'none';
+//        <% $ge %>('<% $name %>_linked').style.visibility = 'hidden';
       } else if ( <% $name %>__type == 'Amount' ) {
         <% $ge %>('<% $name %>_amount_label0').style.display = '';
         <% $ge %>('<% $name %>_amount_label0').style.visibility = '';
-        <% $ge %>('<% $name %>_amount').style.display = '';
-        <% $ge %>('<% $name %>_amount').style.visibility = '';
+        <% $ge %>('<% $name %>_amount_input0').style.display = '';
+        <% $ge %>('<% $name %>_amount_input0').style.visibility = '';
         <% $ge %>('<% $name %>_percent_label0').style.display = 'none';
         <% $ge %>('<% $name %>_percent_label0').style.visibility = 'hidden';
-        <% $ge %>('<% $name %>_percent').style.display = 'none';
-        <% $ge %>('<% $name %>_percent').style.visibility = 'hidden';
+        <% $ge %>('<% $name %>_percent_input0').style.display = 'none';
+        <% $ge %>('<% $name %>_percent_input0').style.visibility = 'hidden';
+        <% $ge %>('<% $name %>_percent_input0').style.visibility = 'hidden';
+//        <% $ge %>('<% $name %>_linked_label0').style.display = 'none';
+//        <% $ge %>('<% $name %>_linked_label0').style.visibility = 'hidden';
+//        <% $ge %>('<% $name %>_linked').style.display = 'none';
+//        <% $ge %>('<% $name %>_linked').style.visibility = 'hidden';
       } else if ( <% $name %>__type == 'Percentage' ) {
         <% $ge %>('<% $name %>_amount_label0').style.display = 'none';
         <% $ge %>('<% $name %>_amount_label0').style.visibility = 'hidden';
-        <% $ge %>('<% $name %>_amount').style.display = 'none';
-        <% $ge %>('<% $name %>_amount').style.visibility = 'hidden';
+        <% $ge %>('<% $name %>_amount_input0').style.display = 'none';
+        <% $ge %>('<% $name %>_amount_input0').style.visibility = 'hidden';
         <% $ge %>('<% $name %>_percent_label0').style.display = '';
         <% $ge %>('<% $name %>_percent_label0').style.visibility = '';
-        <% $ge %>('<% $name %>_percent').style.display = '';
-        <% $ge %>('<% $name %>_percent').style.visibility = '';
+        <% $ge %>('<% $name %>_percent_input0').style.display = '';
+        <% $ge %>('<% $name %>_percent_input0').style.visibility = '';
+        <% $ge %>('<% $name %>_percent_input0').style.visibility = '';
+//        <% $ge %>('<% $name %>_linked_label0').style.display = '';
+//        <% $ge %>('<% $name %>_linked_label0').style.visibility = '';
+//        <% $ge %>('<% $name %>_linked').style.display = '';
+//        <% $ge %>('<% $name %>_linked').style.visibility = '';
      }
 
     }
 
+    <% $name %>_changed(<% $ge %>('<% $name %>'));
+
   </SCRIPT>
 
 % } 
 <%init>
 
 my %opt = @_;
+my $cgi = $opt{'cgi'};
 my $discountnum = $opt{'curr_value'} || $opt{'value'};
 
 $opt{'discount'} ||= [ qsearch( 'discount', { disabled=>'' } ) ];
@@ -170,4 +206,7 @@ unshift @_type_options, $select;
 
 my $colspan = $opt{'colspan'} ? 'COLSPAN="'.$opt{'colspan'}.'"' : '';
 
+my $onchange = ( $opt{'onchange'} ? delete($opt{'onchange'}).';' : '' ).
+               $name.'_changed(this);';
+
 </%init>