-<% include( '/elements/xmlhttp.html',
- 'url' => $p.'misc/xmlhttp-cust_main-address_standardize.html',
- 'subs' => [ 'address_standardize' ],
- #'method' => 'POST', #could get too long?
- )
-%>
-
-<SCRIPT>
-function bottomfixup(what) {
-
- //i don't think we need to copy things between two forms anymore, modern
- //browsers are fine with DIVs inside FORMs
-
- var topvars = new Array(
- 'birthdate',
-
- 'custnum', 'agentnum', 'agent_custid', 'refnum', 'referral_custnum',
-
- 'last', 'first', 'ss', 'company',
- 'address1', 'address2', 'city',
- 'county', 'state', 'zip', 'country',
- 'daytime', 'night', 'fax',
- 'stateid', 'stateid_state',
-
- 'same',
-
- 'ship_last', 'ship_first', 'ship_company',
- 'ship_address1', 'ship_address2', 'ship_city',
- 'ship_county', 'ship_state', 'ship_zip', 'ship_country',
- 'ship_daytime','ship_night', 'ship_fax',
-
- 'select' // XXX key
- );
-
- var layervars = new Array(
- 'payauto',
- 'payinfo', 'payinfo1', 'payinfo2', 'paytype',
- 'payname', 'paystate', 'exp_month', 'exp_year', 'paycvv',
- 'paystart_month', 'paystart_year', 'payissue',
- 'payip',
- 'paid'
- );
-
- var billing_bottomvars = new Array(
- 'tax',
- 'invoicing_list', 'invoicing_list_POST', 'invoicing_list_FAX',
- 'invoice_terms',
- 'spool_cdr',
- 'squelch_cdr'
- );
-
- for ( f=0; f < topvars.length; f++ ) {
- var field = topvars[f];
- copyelement( document.topform.elements[field],
- document.bottomform.elements[field]
- );
- }
-
- var layerform = document.topform.select.options[document.topform.select.selectedIndex].value;
- for ( f=0; f < layervars.length; f++ ) {
- var field = layervars[f];
- copyelement( document.forms[layerform].elements[field],
- document.bottomform.elements[field]
- );
- }
-
- for ( f=0; f < billing_bottomvars.length; f++ ) {
- var field = billing_bottomvars[f];
- copyelement( document.billing_bottomform.elements[field],
- document.bottomform.elements[field]
- );
- }
-
- //this part does USPS address correction
-
- // XXX should this be first and should we update the form fields that are
- // displayed???
-
- //var state_el = document.bottomform.elements['state'];
-
- //address_standardize(
- var cust_main = new Array(
- 'company', document.bottomform.elements['company'].value,
- 'address1', document.bottomform.elements['address1'].value,
- 'address2', document.bottomform.elements['address2'].value,
- 'city', document.bottomform.elements['city'].value,
- 'state', document.bottomform.elements['state'].value,
- //'state', state_el.options[ state_el.selectedIndex ].value,
- 'zip', document.bottomform.elements['zip'].value,
-
- 'ship_company', document.bottomform.elements['ship_company'].value,
- 'ship_address1', document.bottomform.elements['ship_address1'].value,
- 'ship_address2', document.bottomform.elements['ship_address2'].value,
- 'ship_city', document.bottomform.elements['ship_city'].value,
- 'ship_state', document.bottomform.elements['ship_state'].value,
- //'ship_state', state_el.options[ state_el.selectedIndex ].value,
- 'ship_zip', document.bottomform.elements['ship_zip'].value
- );
-
- address_standardize( cust_main, update_address );
-
-}
-
-var standardize_address;
-
-function update_address(arg) {
-
- var argsHash = eval('(' + arg + ')');
-
- var changed = argsHash['address_standardized'];
- var ship_changed = argsHash['ship_address_standardized'];
-
- //yay closures
- standardize_address = function () {
-
- if ( changed ) {
- document.bottomform.elements['company'].value = argsHash['new_company'];
- document.bottomform.elements['address1'].value = argsHash['new_address1'];
- document.bottomform.elements['address2'].value = argsHash['new_address2'];
- document.bottomform.elements['city'].value = argsHash['new_city'];
- document.bottomform.elements['state'].value = argsHash['new_state'];
- //'state', state_el.options[ state_el.selectedIndex ].value,
- document.bottomform.elements['zip'].value = argsHash['new_zip'];
- }
-
- if ( ship_changed ) {
- document.bottomform.elements['ship_company'].value = argsHash['new_ship_company'];
- document.bottomform.elements['ship_address1'].value = argsHash['new_ship_address1'];
- document.bottomform.elements['ship_address2'].value = argsHash['new_ship_address2'];
- document.bottomform.elements['ship_city'].value = argsHash['new_ship_city'];
- document.bottomform.elements['ship_state'].value = argsHash['new_ship_state'];
- //'state', state_el.options[ state_el.selectedIndex ].value,
- document.bottomform.elements['ship_zip'].value = argsHash['new_ship_zip'];
- }
-
- }
-
- if ( changed || ship_changed ) {
-
-% if ( $conf->exists('cust_main-auto_standardize_address') ) {
-
- standardize_address();
- document.bottomform.submit();
-
-% } else {
-
- // popup a confirmation popup
-
- var confirm_change =
- '<CENTER><BR><B>Confirm address standardization</B><BR><BR>' +
- '<TABLE>';
-
- if ( changed ) {
-
- confirm_change = confirm_change +
- '<TR><TH>Entered billing address</TH>' +
- '<TH>Standardized billing address</TH></TR>';
- // + '<TR><TD> </TD><TD> </TD></TR>';
-
- if ( argsHash['company'] || argsHash['new_company'] ) {
- confirm_change = confirm_change +
- '<TR><TD>' + argsHash['company'] +
- '</TD><TD>' + argsHash['new_company'] + '</TD></TR>';
- }
-
- confirm_change = confirm_change +
- '<TR><TD>' + argsHash['address1'] +
- '</TD><TD>' + argsHash['new_address1'] + '</TD></TR>' +
- '<TR><TD>' + argsHash['address2'] +
- '</TD><TD>' + argsHash['new_address2'] + '</TD></TR>' +
- '<TR><TD>' + argsHash['city'] + ', ' + argsHash['state'] + ' ' + argsHash['zip'] +
- '</TD><TD>' + argsHash['new_city'] + ', ' + argsHash['new_state'] + ' ' + argsHash['new_zip'] + '</TD></TR>' +
- '<TR><TD> </TD><TD> </TD></TR>';
-
- }
-
- if ( ship_changed ) {
-
- confirm_change = confirm_change +
- '<TR><TH>Entered service address</TH>' +
- '<TH>Standardized service address</TH></TR>';
- // + '<TR><TD> </TD><TD> </TD></TR>';
-
- if ( argsHash['ship_company'] || argsHash['new_ship_company'] ) {
- confirm_change = confirm_change +
- '<TR><TD>' + argsHash['ship_company'] +
- '</TD><TD>' + argsHash['new_ship_company'] + '</TD></TR>';
- }
-
- confirm_change = confirm_change +
- '<TR><TD>' + argsHash['ship_address1'] +
- '</TD><TD>' + argsHash['new_ship_address1'] + '</TD></TR>' +
- '<TR><TD>' + argsHash['ship_address2'] +
- '</TD><TD>' + argsHash['new_ship_address2'] + '</TD></TR>' +
- '<TR><TD>' + argsHash['ship_city'] + ', ' + argsHash['ship_state'] + ' ' + argsHash['ship_zip'] +
- '</TD><TD>' + argsHash['new_ship_city'] + ', ' + argsHash['new_ship_state'] + ' ' + argsHash['new_ship_zip'] + '</TD></TR>' +
- '<TR><TD> </TD><TD> </TD></TR>';
-
- }
-
- var addresses = 'address';
- var height = 268;
- if ( changed && ship_changed ) {
- addresses = 'addresses';
- height = 396; // #what
- }
-
- confirm_change = confirm_change +
- '<TR><TD>' +
- '<BUTTON TYPE="button" onClick="document.bottomform.submit();"><IMG SRC="<%$p%>images/error.png" ALT=""> Use entered ' + addresses + '</BUTTON>' +
- '</TD><TD>' +
- '<BUTTON TYPE="button" onClick="standardize_address(); document.bottomform.submit();"><IMG SRC="<%$p%>images/tick.png" ALT=""> Use standardized ' + addresses + '</BUTTON>' +
- '</TD></TR>' +
- '<TR><TD COLSPAN=2 ALIGN="center">' +
- '<BUTTON TYPE="button" onClick="document.bottomform.submitButton.disabled=false; parent.cClick();"><IMG SRC="<%$p%>images/cross.png" ALT=""> Cancel submission</BUTTON></TD></TR>' +
-
- '</TABLE></CENTER>';
-
- overlib( confirm_change, CAPTION, 'Confirm address standardization', STICKY, AUTOSTATUSCAP, CLOSETEXT, '', MIDX, 0, MIDY, 0, DRAGGABLE, WIDTH, 576, HEIGHT, height, BGCOLOR, '#333399', CGCOLOR, '#333399', TEXTSIZE, 3 );
-
-% }
-
- } else {
-
- document.bottomform.submit();
-
- }
-
-}
-
-function copyelement(from, to) {
- if ( from == undefined ) {
- to.value = '';
- } else if ( from.type == 'select-one' ) {
- to.value = from.options[from.selectedIndex].value;
- //alert(from + " (" + from.type + "): " + to.name + " => (" + from.selectedIndex + ") " + to.value);
- } else if ( from.type == 'checkbox' ) {
- if ( from.checked ) {
- to.value = from.value;
- } else {
- to.value = '';
- }
- } else {
- if ( from.value == undefined ) {
- to.value = '';
- } else {
- to.value = from.value;
- }
- }
- //alert(from + " (" + from.type + "): " + to.name + " => " + to.value);
-}
-
-</SCRIPT>
-
-<FORM ACTION="<% popurl(1) %>process/cust_main.cgi" METHOD=POST NAME="bottomform" STYLE="margin-top: 0; margin-bottom: 0">
-% foreach my $hidden (
-% 'birthdate',
-%
-% 'custnum', 'agentnum', 'agent_custid', 'refnum', 'referral_custnum',
-% 'last', 'first', 'ss', 'company',
-% 'address1', 'address2', 'city',
-% 'county', 'state', 'zip', 'country',
-% 'daytime', 'night', 'fax',
-% 'stateid', 'stateid_state',
-%
-% 'same',
-%
-% 'ship_last', 'ship_first', 'ship_company',
-% 'ship_address1', 'ship_address2', 'ship_city',
-% 'ship_county', 'ship_state', 'ship_zip', 'ship_country',
-% 'ship_daytime','ship_night', 'ship_fax',
-%
-% 'select', #XXX key
-%
-% 'payauto',
-% 'payinfo', 'payinfo1', 'payinfo2', 'paytype',
-% 'payname', 'paystate', 'exp_month', 'exp_year', 'paycvv',
-% 'paystart_month', 'paystart_year', 'payissue',
-% 'payip',
-% 'paid',
-%
-% 'tax',
-% 'invoicing_list', 'invoicing_list_POST', 'invoicing_list_FAX',
-% 'invoice_terms',
-% 'spool_cdr',
-% 'squelch_cdr'
-% ) {
-%
-
- <INPUT TYPE="hidden" NAME="<% $hidden %>" VALUE="">
-% }
-%