X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Felements%2Fstandardize_locations.js;h=ecccd90f19dd59db8588b0ab3ba6f081b4170a83;hp=a4f13d78db70d2782bd34c61cc3fa8885e1e5d79;hb=f822e27a1e00594332ffa487a1c284234c5580a6;hpb=0f0bc1ef7aafc6b3869c0f71ee2528c1c9897ce6 diff --git a/httemplate/elements/standardize_locations.js b/httemplate/elements/standardize_locations.js index a4f13d78d..ecccd90f1 100644 --- a/httemplate/elements/standardize_locations.js +++ b/httemplate/elements/standardize_locations.js @@ -1,7 +1,7 @@ function status_message(text, caption) { text = '

' + text + '

'; caption = caption || 'Please wait...'; - overlib(text, WIDTH, 444, HEIGHT, 168, CAPTION, caption, STICKY, AUTOSTATUSCAP, CLOSECLICK, MIDX, 0, MIDY, 0); + overlib(text, WIDTH, 444, HEIGHT, 168, CAPTION, caption, STICKY, AUTOSTATUSCAP, CLOSECLICK, NOCLOSE, MIDX, 0, MIDY, 0); } function form_address_info() { @@ -13,7 +13,7 @@ function form_address_info() { % } % for my $pre (@prefixes) { % # normal case -% for my $field (qw(address1 address2 city state zip country)) { +% for my $field (qw(address1 address2 state zip country), ($conf->exists('cust_main-no_city_in_address') ? () : 'city')) { returnobj['<% $pre %><% $field %>'] = cf.elements['<% $pre %><% $field %>'].value; % } #for $field % if ( $withcensus ) { @@ -114,7 +114,12 @@ function confirm_standardize(arg) { // then all entered address fields are correct // but we still need to set the lat/long fields and addr_clean - status_message('Verified'); + + if ( returned['all_clean'] ) { + status_message('Verified'); + } else { + status_message('Unverified'); + } replace_address(); } else { @@ -129,7 +134,7 @@ function confirm_standardize(arg) { function() { overlib( OLresponseAJAX, CAPTION, 'Address standardization', STICKY, AUTOSTATUSCAP, CLOSETEXT, '', MIDX, 0, MIDY, 0, DRAGGABLE, WIDTH, - 576, HEIGHT, 268, BGCOLOR, '#333399', CGCOLOR, '#333399', + 650, HEIGHT, 368, BGCOLOR, '#333399', CGCOLOR, '#333399', TEXTSIZE, 3 ); }, 0); @@ -141,11 +146,16 @@ function replace_address() { var newaddr = returned['new']; var cf = document.<% $formname %>; + var crf = document.forms['confirm_replace_form']; % foreach my $pre (@prefixes) { var clean = newaddr['<% $pre %>addr_clean'] == 'Y'; + var replace = true; // auto_standardize_address won't load the form, so just do it + if ( crf && crf['<% $pre %>replace'] ) { + replace = crf['<% $pre %>replace'].value == 'Y'; + } var error = newaddr['<% $pre %>error']; - if ( clean ) { -% foreach my $field (qw(address1 address2 city state zip addr_clean )) { + if ( clean && replace ) { +% foreach my $field (qw(address1 address2 state zip addr_clean ),($conf->exists('cust_main-no_city_in_address') ? () : 'city')) { cf.elements['<% $pre %><% $field %>'].value = newaddr['<% $pre %><% $field %>']; % } #foreach $field @@ -154,7 +164,12 @@ function replace_address() { cf.elements['<% $pre %>longitude'].value = newaddr['<% $pre %>longitude']; } % if ( $withcensus ) { - if ( clean && newaddr['<% $pre %>censustract'] ) { + var census_replace = true; + if ( crf && crf['census_replace'] ) { + census_replace = crf['census_replace'].value == 'Y'; + } + + if ( clean && census_replace && newaddr['<% $pre %>censustract'] ) { cf.elements['<% $pre %>censustract'].value = newaddr['<% $pre %>censustract']; } % } #if $withcensus @@ -279,10 +294,7 @@ function setselect(el, value) { function confirm_censustract() { % if ( FS::Conf->new->exists('cust_main-require_censustract') ) { var form = document.<% $formname %>; - // this is the existing/confirmed censustract, not the manually entered one - if ( form.elements['censustract'].value == '' || - form.elements['censustract'].value != - form.elements['enter_censustract'].value ) { + if ( form.elements['censustract'].value == '' ) { var address_info = form_address_info(); address_info['latitude'] = form.elements['latitude'].value; address_info['longitude'] = form.elements['longitude'].value;