diff options
Diffstat (limited to 'httemplate/edit/cust_main/bottomfixup.js')
-rw-r--r-- | httemplate/edit/cust_main/bottomfixup.js | 107 |
1 files changed, 8 insertions, 99 deletions
diff --git a/httemplate/edit/cust_main/bottomfixup.js b/httemplate/edit/cust_main/bottomfixup.js index 800864bc8..40bcbd521 100644 --- a/httemplate/edit/cust_main/bottomfixup.js +++ b/httemplate/edit/cust_main/bottomfixup.js @@ -7,8 +7,8 @@ my $company_longitude = $conf->config('company_longitude'); my @fixups = ('copy_payby_fields', 'standardize_locations'); -push @fixups, 'fetch_censustract' - if $conf->exists('cust_main-require_censustract'); +#push @fixups, 'fetch_censustract' +# if $conf->exists('cust_main-require_censustract'); push @fixups, 'check_unique' if $conf->exists('cust_main-check_unique') and !$opt{'custnum'}; @@ -18,15 +18,19 @@ push @fixups, 'do_submit'; # always last var fixups = <% encode_json(\@fixups) %>; var fixup_position; +var running = false; %# state machine to deal with all the asynchronous stuff we're doing %# call this after each fixup on success: function submit_continue() { - window[ fixups[fixup_position++] ].call(); + if ( running ) { + window[ fixups[fixup_position++] ].call(); + } } %# or on failure: function submit_abort() { + running = false; fixup_position = 0; document.CustomerForm.submitButton.disabled = false; cClick(); @@ -35,6 +39,7 @@ function submit_abort() { function bottomfixup(what) { fixup_position = 0; document.CustomerForm.submitButton.disabled = true; + running = true; submit_continue(); } @@ -63,107 +68,11 @@ function copy_payby_fields() { submit_continue(); } -%# call submit_continue() on completion... -%# otherwise not touching standardize_locations for now <% include( '/elements/standardize_locations.js', 'callback' => 'submit_continue();' ) %> -function fetch_censustract() { - - //alert('fetch census tract data'); - var cf = document.CustomerForm; - var state_el = cf.elements['ship_state']; - var census_data = new Array( - 'year', <% $conf->config('census_year') || '2012' %>, - 'address1', cf.elements['ship_address1'].value, - 'city', cf.elements['ship_city'].value, - 'state', state_el.options[ state_el.selectedIndex ].value, - 'zip', cf.elements['ship_zip'].value - ); - - censustract( census_data, update_censustract ); - -} - -var set_censustract; - -function update_censustract(arg) { - - var argsHash = eval('(' + arg + ')'); - - var cf = document.CustomerForm; - -/* var msacode = argsHash['msacode']; - var statecode = argsHash['statecode']; - var countycode = argsHash['countycode']; - var tractcode = argsHash['tractcode']; - - var newcensus = - new String(statecode) + - new String(countycode) + - new String(tractcode).replace(/\s$/, ''); // JSON 1 workaround */ - var error = argsHash['error']; - var newcensus = argsHash['censustract']; - - set_censustract = function () { - - cf.elements['censustract'].value = newcensus; - submit_continue(); - - } - - if (error || cf.elements['censustract'].value != newcensus) { - // popup an entry dialog - - if (error) { newcensus = error; } - newcensus.replace(/.*ndefined.*/, 'Not found'); - - var latitude = cf.elements['latitude' ].value || '<% $company_latitude %>'; - var longitude= cf.elements['longitude'].value || '<% $company_longitude %>'; - - var choose_censustract = - '<CENTER><BR><B>Confirm censustract</B><BR>' + - '<A href="http://maps.ffiec.gov/FFIECMapper/TGMapSrv.aspx?' + - 'census_year=<% $conf->config('census_year') || '2012' %>' + - '&latitude=' + latitude + - '&longitude=' + longitude + - '" target="_blank">Map service module location</A><BR>' + - '<A href="http://maps.ffiec.gov/FFIECMapper/TGMapSrv.aspx?' + - 'census_year=<% $conf->config('census_year') || '2012' %>' + - '&zip_code=' + cf.elements['ship_zip'].value + - '" target="_blank">Map zip code center</A><BR><BR>' + - '<TABLE>'; - - choose_censustract = choose_censustract + - '<TR><TH style="width:50%">Entered census tract</TH>' + - '<TH style="width:50%">Calculated census tract</TH></TR>' + - '<TR><TD>' + cf.elements['censustract'].value + - '</TD><TD>' + newcensus + '</TD></TR>' + - '<TR><TD> </TD><TD> </TD></TR>'; - - choose_censustract = choose_censustract + - '<TR><TD ALIGN="center">' + - '<BUTTON TYPE="button" onClick="submit_continue();"><IMG SRC="<%$p%>images/error.png" ALT=""> Use entered census tract </BUTTON>' + - '</TD><TD ALIGN="center">' + - '<BUTTON TYPE="button" onClick="set_censustract();"><IMG SRC="<%$p%>images/tick.png" ALT=""> Use calculated census tract </BUTTON>' + - '</TD></TR>' + - '<TR><TD COLSPAN=2 ALIGN="center">' + - '<BUTTON TYPE="button" onClick="submit_abort();"><IMG SRC="<%$p%>images/cross.png" ALT=""> Cancel submission</BUTTON></TD></TR>' + - - '</TABLE></CENTER>'; - - overlib( choose_censustract, CAPTION, 'Confirm censustract', STICKY, AUTOSTATUSCAP, CLOSETEXT, '', MIDX, 0, MIDY, 0, DRAGGABLE, WIDTH, 576, HEIGHT, 268, BGCOLOR, '#333399', CGCOLOR, '#333399', TEXTSIZE, 3 ); - - } else { - - submit_continue(); - - } - -} - function copyelement(from, to) { if ( from == undefined ) { to.value = ''; |