// HTTP Request
HTTPRequest = function () {
var xmlhttp=null;
  try {
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (_e) {
    try {
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (_E) { }
  }
  if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
    try {
      xmlhttp = new XMLHttpRequest();
    } catch (e) {
      xmlhttp = false;
    }
  }
  return xmlhttp;
}

var procbar = "<table width=100% height=20 border=0 cellpadding=0 cellspacing=0><tr bgcolor=#FFFFFF><td align=center valign=middle><img src=ups/loading.gif width=16 height=16 align=absmiddle /> Processing...</td></tr></table>";


function askPost(url,questStr,fieldToFill) {
  var http = new HTTPRequest();
  http.open("POST", url, true);
  http.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");  
  http.send(questStr);
  http.onreadystatechange = function (){ handleHttpResponsePost(http,fieldToFill)};
}

function handleHttpResponsePost(http,fieldToFill) {
 if (http.readyState == 4) {
    result = http.responseText;
    
  if ( -1 != result.search("null") ) {
      fieldToFill.innerHTML = "";
    } else {
      fieldToFill.innerHTML = result;
     document.getElementById("ups_fg").value = 1;
	 GetUPSRate();
    }
  }
}

function GetUPSRate() {
	var rate = document.getElementById("upsService").value;
	var text = document.getElementById("upsService")[document.getElementById("upsService").selectedIndex].text;
	var money = rate.substr(4);

    document.getElementById("ups_method").value = text;
	document.getElementById("ups_rate").value = money;

    document.getElementById("upsRate").innerHTML = "$"+money;
}

function ups_config() {
   var shipper_city = document.getElementById("shipper_city").value;	
   var shipper_zip = document.getElementById("shipper_zip").value;
   var shipper_cc = document.getElementById("shipper_cc").value;
   var shipto_city = document.getElementById("shipto_city").value;
   var shipto_zip = document.getElementById("shipto_zip").value;
   var shipto_cc = document.getElementById("shipto_cc").value;
   var ship_weightunit = document.getElementById("ship_weightunit").value;
   var ship_weight = document.getElementById("ship_weight").value;
   var UPSdiv = document.getElementById("ups");
   
   document.getElementById("ups").innerHTML = "";
   document.getElementById("ups").innerHTML = procbar;
	  questStr = "proc=upsproc&shipper_city="+shipper_city+"&shipper_zip="+shipper_zip+"&shipper_cc="+shipper_cc+"&shipto_city="+shipto_city+"&shipto_zip="+shipto_zip+"&shipto_cc="+shipto_cc+"&ship_weightunit="+ship_weightunit+"&ship_weight="+ship_weight;
	  
	  askPost("ups/ups_proc.php",questStr,UPSdiv);
  	  return false;
}


function show_ups(e) {
	if (e.checked) { 
	 document.getElementById("ups_div").style.display = ""; } 
	 
	var fg = document.getElementById("ups_fg").value;
    if (fg==0) { ups_config(); }
	return false;
}
	
function hide_ups(e) {
	if (e.checked) { document.getElementById("ups_div").style.display = "none"; }
	return false;
}

function ups_select() {
	document.getElementById("ups_div").style.display = "";
	ups_config();
	return false;
	}