add cust_main.mobile and ship_mobile to support uniserve portal, RT#13656
[freeside.git] / httemplate / edit / cust_main / contact.html
index e813986..51c0960 100644 (file)
 <% &ntable("#cccccc") %>
 
 <TR>
-  <TH ALIGN="right"><%$r%>Contact&nbsp;name<BR>(last,&nbsp;first)</TH>
-  <TD COLSPAN=5>
-    <INPUT TYPE="text" NAME="<%$pre%>last" VALUE="<% $cust_main->get($pre.'last') %>" onChange="<% $onchange %>" <%$disabled%>> , 
-    <INPUT TYPE="text" NAME="<%$pre%>first" VALUE="<% $cust_main->get($pre.'first') %>" onChange="<% $onchange %>" <%$disabled%>>
+  <TH ALIGN="right"><%$r%><% mt('Contact name (last, first)') |h %></TH>
+  <TD COLSPAN=7>
+    <INPUT TYPE="text" NAME="<%$pre%>last" VALUE="<% $cust_main->get($pre.'last') |h %>" onChange="<% $onchange %>" <%$disabled%> <%$style%>> , 
+    <INPUT TYPE="text" NAME="<%$pre%>first" VALUE="<% $cust_main->get($pre.'first') |h %>" onChange="<% $onchange %>" <%$disabled%> <%$style%>>
   </TD>
 % if ( $conf->exists('show_ss') && !$pre ) { 
 
-  <TD ALIGN="right">SS#</TD>
-  <TD><INPUT TYPE="text" NAME="ss" VALUE="<% $cust_main->ss %>" SIZE=11></TD>
+  <TD ALIGN="right"><% mt('SS#') |h %></TD>
+  <TD><INPUT TYPE="text" NAME="ss" VALUE="<% $opt{ss} %>" SIZE=11></TD>
 % } elsif ( !$pre ) { 
 
-  <TD><INPUT TYPE="hidden" NAME="ss" VALUE="<% $cust_main->ss %>"></TD>
+  <TD><INPUT TYPE="hidden" NAME="ss" VALUE="<% $opt{ss} %>"></TD>
 % } 
 
 
 </TR>
 
+% if ( $conf->exists('cust-email-high-visibility') && !$pre ) {
+    <TR>
+      <TD ALIGN="right" WIDTH="200">
+        <% $conf->exists('cust_main-require_invoicing_list_email') ? $r : '' %>Email address(es)
+      </TD>
+      <TD bgcolor="#FFFF00">
+        <INPUT TYPE="text" NAME="invoicing_list" VALUE="<% join(', ', grep { $_ !~ /^(POST|FAX)$/ } @invoicing_list ) %>">
+      </TD>
+    </TR>
+% }
+
+% unless ( $conf->exists('cust-edit-alt-field-order') ) {
 <TR>
-  <TD ALIGN="right">Company</TD>
+  <TD ALIGN="right"><% mt('Company') |h %></TD>
   <TD COLSPAN=7>
-    <INPUT TYPE="text" NAME="<%$pre%>company" VALUE="<% $cust_main->get($pre.'company') %>" SIZE=70 onChange="<% $onchange %>" <%$disabled%>>
+    <INPUT TYPE="text" NAME="<%$pre%>company" VALUE="<% $cust_main->get($pre.'company') |h %>" SIZE=70 onChange="<% $onchange %>" <%$disabled%> <%$style%>>
   </TD>
 </TR>
 
+<& /elements/location.html,
+             'prefix'       => $pre,
+             'object'       => $cust_main,
+             'onchange'     => $onchange,
+             'disabled'     => $disabled,
+             'style'        => \@style,
+             'same_checked' => $opt{'same_checked'},
+             'geocode'      => $opt{'geocode'},
+             'censustract'  => $opt{'censustract'},
+&>
+
 <TR>
-  <TH ALIGN="right"><%$r%>Address</TH>
-  <TD COLSPAN=7>
-    <INPUT TYPE="text" NAME="<%$pre%>address1" VALUE="<% $cust_main->get($pre.'address1') %>" SIZE=70 onChange="<% $onchange %>" <%$disabled%>>
+  <TD ALIGN="right"><% $daytime_label %></TD>
+  <TD COLSPAN=5>
+    <INPUT TYPE="text" NAME="<%$pre%>daytime" VALUE="<% $cust_main->get($pre.'daytime') %>" SIZE=18 onChange="<% $onchange %>" <%$disabled%> <%$style%>>
   </TD>
 </TR>
 
 <TR>
-  <TD ALIGN="right">&nbsp;</TD>
-  <TD COLSPAN=7>
-    <INPUT TYPE="text" NAME="<%$pre%>address2" VALUE="<% $cust_main->get($pre.'address2') %>" SIZE=70 onChange="<% $onchange %>" <%$disabled%>>
+  <TD ALIGN="right"><% $night_label %></TD>
+  <TD COLSPAN=5>
+    <INPUT TYPE="text" NAME="<%$pre%>night" VALUE="<% $cust_main->get($pre.'night') %>" SIZE=18 onChange="<% $onchange %>" <%$disabled%> <%$style%>>
   </TD>
 </TR>
 
 <TR>
-  <TH ALIGN="right"><%$r%>City</TH>
-  <TD>
-    <INPUT TYPE="text" NAME="<%$pre%>city" VALUE="<% $cust_main->get($pre.'city') %>" onChange="<% $onchange %>" <%$disabled%>>
-  </TD>
-  <TH ALIGN="right" ID="<%$pre%>countylabel" <%$county_style%>><%$r%>County</TH>
-  <TD>
-    <% include('select-county.html', %select_hash ) %>
-  </TD>
-  <TH ALIGN="right"><%$r%>State</TH>
-  <TD>
-    <% include('select-state.html', %select_hash ) %>
-  </TD>
-  <TH><%$r%>Zip</TH>
-  <TD>
-    <INPUT TYPE="text" NAME="<%$pre%>zip" VALUE="<% $cust_main->get($pre.'zip') %>" SIZE=10 onChange="<% $onchange %>" <%$disabled%>>
+  <TD ALIGN="right"><% $mobile_label %></TD>
+  <TD COLSPAN=5>
+    <INPUT TYPE="text" NAME="<%$pre%>mobile" VALUE="<% $cust_main->get($pre.'mobile') %>" SIZE=18 onChange="<% $onchange %>" <%$disabled%> <%$style%>>
   </TD>
 </TR>
 
 <TR>
-  <TH ALIGN="right"><%$r%>Country</TH>
-  <TD COLSPAN=5><% include('select-country.html', %select_hash ) %></TD>
+  <TD ALIGN="right"><% mt('Fax') |h %></TD>
+  <TD COLSPAN=5>
+    <INPUT TYPE="text" NAME="<%$pre%>fax" VALUE="<% $cust_main->get($pre.'fax') %>" SIZE=12 onChange="<% $onchange %>" <%$disabled%> <%$style%>>
+  </TD>
 </TR>
 
+% } else {
+
 <TR>
   <TD ALIGN="right"><% $daytime_label %></TD>
   <TD COLSPAN=5>
-    <INPUT TYPE="text" NAME="<%$pre%>daytime" VALUE="<% $cust_main->get($pre.'daytime') %>" SIZE=18 onChange="<% $onchange %>" <%$disabled%>>
+    <INPUT TYPE="text" NAME="<%$pre%>daytime" VALUE="<% $cust_main->get($pre.'daytime') %>" SIZE=18 onChange="<% $onchange %>" <%$disabled%> <%$style%>>
   </TD>
 </TR>
 
 <TR>
   <TD ALIGN="right"><% $night_label %></TD>
   <TD COLSPAN=5>
-    <INPUT TYPE="text" NAME="<%$pre%>night" VALUE="<% $cust_main->get($pre.'night') %>" SIZE=18 onChange="<% $onchange %>" <%$disabled%>>
+    <INPUT TYPE="text" NAME="<%$pre%>night" VALUE="<% $cust_main->get($pre.'night') %>" SIZE=18 onChange="<% $onchange %>" <%$disabled%> <%$style%>>
   </TD>
 </TR>
 
 <TR>
-  <TD ALIGN="right">Fax</TD>
+  <TD ALIGN="right"><% $mobile_label %></TD>
+  <TD COLSPAN=5>
+    <INPUT TYPE="text" NAME="<%$pre%>mobile" VALUE="<% $cust_main->get($pre.'mobile') %>" SIZE=18 onChange="<% $onchange %>" <%$disabled%> <%$style%>>
+  </TD>
+</TR>
+
+<& /elements/location.html,
+             'prefix'       => $pre,
+             'object'       => $cust_main,
+             'onchange'     => $onchange,
+             'disabled'     => $disabled,
+             'style'        => \@style,
+             'same_checked' => $opt{'same_checked'},
+             'geocode'      => $opt{'geocode'},
+             'censustract'  => $opt{'censustract'},
+&>
+
+<TR>
+  <TD ALIGN="right"><% mt('Fax') |h %></TD>
   <TD COLSPAN=5>
-    <INPUT TYPE="text" NAME="<%$pre%>fax" VALUE="<% $cust_main->get($pre.'fax') %>" SIZE=12 onChange="<% $onchange %>" <%$disabled%>>
+    <INPUT TYPE="text" NAME="<%$pre%>fax" VALUE="<% $cust_main->get($pre.'fax') %>" SIZE=12 onChange="<% $onchange %>" <%$disabled%> <%$style%>>
   </TD>
 </TR>
 
+<TR>
+  <TD ALIGN="right"><% mt('Company') |h %></TD>
+  <TD COLSPAN=7>
+    <INPUT TYPE="text" NAME="<%$pre%>company" VALUE="<% $cust_main->get($pre.'company') |h %>" SIZE=70 onChange="<% $onchange %>" <%$disabled%> <%$style%>>
+  </TD>
+</TR>
+
+% }
+
+% if ( $conf->exists('show_stateid') && !$pre ) { 
+
+<TR>
+  <TD ALIGN="right"><% $stateid_label %></TD>
+  <TD><INPUT TYPE="text" NAME="stateid" VALUE="<% $opt{stateid} %>" SIZE=12 onChange="<% $onchange %>" <%$disabled%> <%$style%>></TD>
+  <TD ALIGN="right"><% $stateid_state_label %></TD>
+  <TD><& /elements/select-state.html,
+                   'state'    => $cust_main->stateid_state,
+                   'country'  => $cust_main->country,
+                   'prefix'   => 'stateid_',
+                   'onchange' => $onchange,
+                   'disabled' => $disabled,
+                   'style'    => \@style,
+      &>
+  </TD>
+</TR>
+% } elsif ( !$pre ) { 
+
+  <TD><INPUT TYPE="hidden" NAME="stateid" VALUE="<% $opt{stateid} %>"></TD>
+  <TD><INPUT TYPE="hidden" NAME="stateid_state" VALUE="<% $cust_main->stateid_state %>"></TD>
+% } 
+
 </TABLE>
-<%$r%>required fields<BR>
+<%$r%><% mt('required fields') |h %><BR>
 
 <%init>
 
-my( $cust_main, $pre, $onchange, $disabled ) = @_;
+my %opt = @_;
+my $cust_main = $opt{'cust_main'};
+my $pre       = $opt{'pre'};
+my $onchange  = $opt{'onchange'};
+my $disabled  = $opt{'disabled'};
+my @style     = ( $opt{'style'} ? @{ $opt{'style'} } : () );
+
+my $style = scalar(@style) ? 'STYLE="'. join(';', @style). '"' : '';
+
 my $conf = new FS::Conf;
 
+foreach (qw(ss stateid)) {
+  $opt{$_} = $cust_main->masked($_) unless exists $opt{$_};
+}
+
 #false laziness with ship state
 my $countrydefault = $conf->config('countrydefault') || 'US';
 $cust_main->set($pre.'country', $countrydefault )
@@ -103,32 +179,34 @@ $cust_main->set($pre.'state', $statedefault )
   unless $cust_main->get($pre.'state')
          || $cust_main->get($pre.'country') ne $countrydefault;
 
-#my($county_html, $state_html, $country_html) =
-#  FS::cust_main_county::regionselector( $cust_main->get($pre.'county'),
-#                                        $cust_main->get($pre.'state'),
-#                                        $cust_main->get($pre.'country'),
-#                                        $pre,
-#                                        $onchange,
-#                                        $disabled,
-#                                      );
-
-my %select_hash = (
-  'county'   => $cust_main->get($pre.'county'),
-  'state'    => $cust_main->get($pre.'state'),
-  'country'  => $cust_main->get($pre.'country'),
-  'prefix'   => $pre,
-  'onchange' => $onchange,
-  'disabled' => $disabled,
-);
-
-my @counties = counties( $cust_main->get($pre.'state'),
-                         $cust_main->get($pre.'country'),
-                       );
-my $county_style = scalar(@counties) > 1 ? '' : 'STYLE="visibility:hidden"';
-
-my $daytime_label = FS::Msgcat::_gettext('daytime') || 'Day Phone';
-my $night_label = FS::Msgcat::_gettext('night') || 'Night Phone';
+$cust_main->set('stateid_state', $cust_main->state )
+  unless $pre || $cust_main->get('stateid_state');
+
+$opt{geocode} ||= $cust_main->get('geocode');
+
+if ( $conf->exists('cust_main-require_censustract') ) {
+  $opt{censustract} ||= $cust_main->censustract;
+}
+
+my $daytime_label = FS::Msgcat::_gettext('daytime') =~ /^(daytime)?$/
+                      ? 'Day Phone'
+                      : FS::Msgcat::_gettext('daytime');
+my $night_label   = FS::Msgcat::_gettext('night') =~/^(night)?$/
+                      ? 'Night Phone'
+                      : FS::Msgcat::_gettext('night') || 'Night Phone';
+my $mobile_label = FS::Msgcat::_gettext('mobile') =~/^(mobile)?$/
+                      ? 'Mobile Phone'
+                      : FS::Msgcat::_gettext('mobile') || 'Mobile Phone';
+
+my $stateid_label = FS::Msgcat::_gettext('stateid') =~ /^(stateid)?$/
+                  ? 'Driver&rsquo;s License'
+                  : FS::Msgcat::_gettext('stateid') || 'Driver&rsquo;s License';
+my $stateid_state_label = FS::Msgcat::_gettext('stateid_state') =~ /^(stateid_state)?$/
+                        ? 'Driver&rsquo;s License State'
+                        : FS::Msgcat::_gettext('stateid_state') || 'Driver&rsquo;s License State';
 
 my $r = qq!<font color="#ff0000">*</font>&nbsp;!;
 
+my @invoicing_list = $cust_main->invoicing_list;
+
 </%init>