VALUE="Y"
<% $has_ship_address ? '' : 'CHECKED' %>
><% mt('same as billing address') |h %>
- <DIV CLASS="fsinnerbox">
- <TABLE ID="table_ship_location" WIDTH="100%">
+ <DIV ID="div_ship_location">
+ <TABLE WIDTH="100%" CLASS="fsinnerbox">
<& cust_main/before_ship_location.html, $cust_main &>
<& /elements/location.html,
object => $cust_main->ship_location,
</TD>
</TR></TABLE>
-<SCRIPT>
+<SCRIPT TYPE="text/javascript">
+
function samechanged(what) {
-%# not display = 'none', because we still want it to take up space
-%# document.getElementById('table_ship_location').style.visibility =
-%# what.checked ? 'hidden' : 'visible';
- var t1 = document.getElementById('table_ship_location');
if ( what.checked ) {
- t1.style.visibility = 'hidden';
- }
- else {
- t1.style.visibility = 'visible'
+ $('#div_ship_location').slideUp();
+ } else {
+ $('#div_ship_location').slideDown();
}
}
-samechanged(document.getElementById('same'));
-</SCRIPT>
-<BR>
+% if ( ! $has_ship_address ) {
+ $('#div_ship_location').hide();
+% }
+
+</SCRIPT>
<& cust_main/contacts_new.html, 'cust_main'=>$cust_main, &>
%# billing info
<& cust_main/billing.html, $cust_main,
- 'payinfo' => $payinfo,
'invoicing_list' => \@invoicing_list,
&>
#get record
-my($custnum, $cust_main, $ss, $stateid, $payinfo, @invoicing_list);
+my($custnum, $cust_main, $ss, $stateid, @invoicing_list);
my $pkgpart_svcpart = ''; #first_pkg
my($username, $password, $popnum, $saved_domsvc) = ( '', '', 0, 0 ); #svc_acct
my %svc_phone = ();
my %locations;
for my $pre (qw(bill ship)) {
my %hash;
- foreach ( FS::cust_main->location_fields ) {
- $hash{$_} = scalar($cgi->param($pre.'_'.$_));
+ foreach my $locfield ( FS::cust_main->location_fields ) {
+ # don't search on lat/long, string values can cause qsearchs to die
+ next if grep {$_ eq $locfield} qw(latitude longitude);
+ $hash{$locfield} = scalar($cgi->param($pre.'_'.$locfield));
}
$hash{'custnum'} = $cgi->param('custnum');
$locations{$pre} = qsearchs('cust_location', \%hash)
|| FS::cust_location->new( \%hash );
+ # now set lat/long, for redisplay of entered values
+ foreach my $locfield ( qw(latitude longitude) ) {
+ my $locvalue = scalar($cgi->param($pre.'_'.$locfield));
+ $locations{$pre}->set($locfield,$locvalue);
+ }
}
if ( $same ) {
$locations{ship} = $locations{bill};
$cust_main->setfield('paid' => $cgi->param('paid')) if $cgi->param('paid');
$ss = $cust_main->ss; # don't mask an entered value on errors
$stateid = $cust_main->stateid; # don't mask an entered value on errors
- $payinfo = $cust_main->payinfo; # don't mask an entered value on errors
$cust_main->national_id( $cgi->param('national_id1') || $cgi->param('national_id2') );
@invoicing_list = $cust_main->invoicing_list;
$ss = $conf->exists('unmask_ss') ? $cust_main->ss : $cust_main->masked('ss');
$stateid = $cust_main->masked('stateid');
- $payinfo = $cust_main->paymask;
} else { #new customer
$cust_main->agentnum( $conf->config('default_agentnum') )
if $conf->exists('default_agentnum');
$cust_main->referral_custnum( $cgi->param('referral_custnum') );
- @invoicing_list = ();
- push @invoicing_list, 'POST'
+ $cust_main->set('postal_invoice', 'Y')
unless $conf->exists('disablepostalinvoicedefault');
$ss = '';
$stateid = '';
- $payinfo = '';
$cgi->param('tagnum', FS::part_tag->default_tags);