add cust_main-require_locale configuration setting, RT#17594
[freeside.git] / httemplate / edit / cust_main / billing.html
index 78fac6c..0194d31 100644 (file)
@@ -34,7 +34,7 @@
 %
 %  my $r = qq!<font color="#ff0000">*</font>&nbsp;!;
 
-  <BR><FONT SIZE="+1"><B><% mt('Billing information') |h %></B></FONT>
+  <BR><FONT CLASS="fsinnerbox-title"><% mt('Billing information') |h %></FONT>
   <% &ntable("#cccccc") %>
 
     <TR>
 
 %   my @exempt_groups = grep /\S/, $conf->config('tax-cust_exempt-groups');
 
-    <TR>
-      <TD WIDTH="608" COLSPAN="2"><INPUT TYPE="checkbox" NAME="tax" VALUE="Y" <% $cust_main->tax eq "Y" ? 'CHECKED' : '' %>> Tax Exempt<% @exempt_groups ? ' (all taxes)' : '' %></TD>
-    </TR>
+%   if ( $conf->exists('cust_class-tax_exempt') ) {
+
+      <INPUT TYPE="hidden" NAME="tax" VALUE="<% $cust_main->tax eq 'Y' ? 'Y' : '' %>">
+
+%   } else {
+
+      <TR>
+        <TD WIDTH="608" COLSPAN="2"><INPUT TYPE="checkbox" NAME="tax" VALUE="Y" <% $cust_main->tax eq "Y" ? 'CHECKED' : '' %>> Tax Exempt<% @exempt_groups ? ' (all taxes)' : '' %></TD>
+      </TR>
+
+%   }
 
 %   foreach my $exempt_group ( @exempt_groups ) {
 %     #escape $exempt_group for NAME
 % unless ( $conf->exists('cust-email-high-visibility')) {
     <TR>
       <TD ALIGN="right" WIDTH="200">
-        <% $conf->exists('cust_main-require_invoicing_list_email') ? $r : '' %>Email address(es)
+        <% $conf->exists('cust_main-require_invoicing_list_email', $agentnum) 
+            ? $r : '' %>Email address(es)
       </TD>
       <TD WIDTH="408"><INPUT TYPE="text" NAME="invoicing_list" VALUE="<% join(', ', grep { $_ !~ /^(POST|FAX)$/ } @invoicing_list ) %>"></TD>
     </TR>
@@ -561,25 +570,30 @@ function toggle(obj) {
 
 %my @available_locales = $conf->config('available-locales');
 %if ( scalar(@available_locales) ) {
-%   push @available_locales, '';
-%    my %locale_labels = map { 
-%        my %ll;
-%        my %info = FS::Locales->locale_info($_);
-%        $ll{$_} = $info{name} . " (" . $info{country} . ")";
-%        %ll;
-%    } FS::Locales->locales;
-  <& /elements/tr-select.html, 
-        'label'         => emt('Invoicing locale'),
-        'field'         => 'locale',
-        'options'       => \@available_locales,
-        'labels'        => \%locale_labels,
-        'curr_value'    => $cust_main->locale,
-  &>
+%  push @available_locales, ''
+%    unless $cust_main->locale && $conf->exists('cust_main-require_locale');
+%  my %locale_labels = map { 
+%    my %ll;
+%    my %info = FS::Locales->locale_info($_);
+%    $ll{$_} = $info{name} . " (" . $info{country} . ")";
+%    %ll;
+%  } FS::Locales->locales;
+%    
+%  my $label = ( $conf->exists('cust_main-require_locale') ? $r : '' ).
+%              emt('Invoicing locale');
+
+    <& /elements/tr-select.html, 
+         'label'         => $label,
+         'field'         => 'locale',
+         'options'       => \@available_locales,
+         'labels'        => \%locale_labels,
+         'curr_value'    => $cust_main->locale,
+    &>
 % }
 
   </TABLE>
 
-  <% $r %> <% mt('required fields') |h %> 
+  <% $r %><% mt('required fields') |h %> 
 % } 
 
 <script type="text/javascript">
@@ -614,4 +628,6 @@ if ( $cust_main->custnum ) {
   $show_term = $term_sth->fetchrow_arrayref->[0];
 }
 
+my $agentnum = $cust_main->agentnum if $cust_main->custnum;
+
 </%init>