summaryrefslogtreecommitdiff
path: root/httemplate/edit/cust_main.cgi
diff options
context:
space:
mode:
authorJonathan Prykop <jonathan@freeside.biz>2016-08-03 12:27:05 -0500
committerJonathan Prykop <jonathan@freeside.biz>2016-08-03 12:27:05 -0500
commit9d963d1e6270bf67f385a4b5fda4e51cdf4e79ed (patch)
tree96694458ecb075506cd4ed04c1faaa265f041f61 /httemplate/edit/cust_main.cgi
parent34c878349988d97957f1d53427896a4d70afb392 (diff)
RT#71518: Bug in the address editor
Diffstat (limited to 'httemplate/edit/cust_main.cgi')
-rwxr-xr-xhttemplate/edit/cust_main.cgi11
1 files changed, 9 insertions, 2 deletions
diff --git a/httemplate/edit/cust_main.cgi b/httemplate/edit/cust_main.cgi
index 39cddc021..b314d2d6e 100755
--- a/httemplate/edit/cust_main.cgi
+++ b/httemplate/edit/cust_main.cgi
@@ -203,12 +203,19 @@ if ( $cgi->param('error') ) {
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};