 (function(){

	function showErrorResult()
	{
	}

	function populateResults(xml) {		
		var status = $("status",xml).text();
		if(status == "error") {
			showErrorResult();
			return;
		}
		
		var rAddress = $("address",xml).text();
		var rCity = $("city",xml).text();
		var rState = $("state",xml).text().replace(/^\s+|\s+$/g, '');
		var rPostalCode = $("postalcode",xml).text().replace(/^\s+|\s+$/g, '');

		document.dollaunch_form.Address.value = rAddress;
		document.dollaunch_form.PoliticalDiv2.value = rCity;
		for (var i = 0; i < document.dollaunch_form.PoliticalDiv1.options.length; i++) {
		    var hState = document.dollaunch_form.PoliticalDiv1.options[i].value;  
			if (hState == rState) {
				document.dollaunch_form.PoliticalDiv1.options[i].selected = true;
			}
			else
				document.dollaunch_form.PoliticalDiv1.options[i].selected = false;						
		}							
		document.dollaunch_form.Postal.value = rPostalCode;
	}

	function getAddressWithAjax() {	
		var params = {	loc: "en_US",
						charset: "utf-8",
						javascript:"true",
						adk: document.dollaunch_form.dollaunch_addressbook.value
		};
		
		$.ajax({
			url: '/dollaunch/ajax',
			type: 'post',
			beforeSend: function(xhr) {
				xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=utf-8");
			},
			data: params,
			dataType: 'xml',
			timeout: 4000,
			error: function(){
				showErrorResult();
			},
			success: function(xml) {
				populateResults(xml);
			}
		});
	}
		
	function handleSubmitData(_form, _checkbox, _displayOption, _checkedValue, _uncheckedValue) {
		var pPID = null;
		var metaArray = document.getElementsByTagName("meta");
		for(var i=0; metaArray[i]; i++) {
		  if(metaArray[i].getAttribute("name") == "DCSext.pPID") {
		  	  pPID	= metaArray[i].getAttribute("content");
			  break;
		  }
		}
		
		if(pPID != null)
			document.dollaunch_form.WBPM_lid.value = pPID + "_pnl_loc";
				
		if(_checkbox.checked)
			_displayOption.value = _checkedValue;
		else
			_displayOption.value = _uncheckedValue;		
	}
	
	function changedAddress(_select) {
		var obj = document.getElementById(_select); 
		if(obj != null ) {
			getAddressWithAjax();
		}
	}	

	var com_ups_dollaunch = window.com_ups_dollaunch = function() {	};
	
	com_ups_dollaunch.getAddressWithAjax = getAddressWithAjax;	
	com_ups_dollaunch.handleSubmitData = handleSubmitData;	
	com_ups_dollaunch.changedAddress = changedAddress;
	
})();