var userCountry = "";
var userState = "";
var userCity = "";
	
var allCountry="";
var userAddressArray=new Array();
var billAddressObjects= ['billEmail','billFname','billAddress1','billCountryValue','billStateValue','billCityValue', 	
						'billOtherCity','billZip','billTelephoneNumber','billMobileNumber']; 
var shipAddressObjects= ['shipEmail','shipFname','shipAddress1','shipCountryValue','shipStateValue','shipCityValue', 	
						'shipOtherCity','shipZip','shipTelephoneNumber','shipMobileNumber']; 

var validateShipAddressObjects= ['shipFname','shipAddress1','shipCountryValue','shipStateValue','shipCityValue','shipZip','shipTelephoneNumber','shipMobileNumber']; 
var validateBillAddressObjects= ['billFname','billAddress1','billCountryValue','billStateValue','billCityValue','billZip','billTelephoneNumber','billMobileNumber']; 
var ismcnd = new Array();
function changeStateCity(key,value,dropDownObject){
	if(value == ""){
		removeAllOptions(dropDownObject);
		addOption(dropDownObject,"--Please Select--","");
		isNoStateFound(dropDownObject);
	}
	else{
		var responseText="";
		var multiArray = new Array();
		for(var k=0;k<ismcnd.length;k++){
				multiArray = ismcnd[k];
				if(multiArray[0]==value){
					responseText = multiArray[1];
					removeAllOptions(dropDownObject);
					filldropDown(dropDownObject,responseText);	
					//alert("old data..............");
					break;
				}
		}
		if(responseText==""){
			//alert("new request===============================");
			var XMLHttpRequestObject = getHTTPObject();
			var url = path + "/faces/servlet/stateCityServlet.jsp";
		
			if(XMLHttpRequestObject){
				XMLHttpRequestObject.open("POST", url,true);
				XMLHttpRequestObject.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
				XMLHttpRequestObject.onreadystatechange = function (){
					if (XMLHttpRequestObject.readyState == 4 ){
						var buffer=XMLHttpRequestObject.responseText;
						var cndLength = ismcnd.length;
						ismcnd[cndLength] = new Array(2);
						ismcnd[cndLength][0]=value;
						ismcnd[cndLength][1]=buffer;
						removeAllOptions(dropDownObject);
						filldropDown(dropDownObject,buffer);						
					}
				};
				XMLHttpRequestObject.send(key+"="+value);
			}
			else{
				return false;
			}
		}
		
	}
}
function addOption(selectbox,text,value ){
	var optn = document.createElement("OPTION");
	optn.text = text;
	optn.value = value;
	selectbox.options.add(optn);
}

function removeAllOptions(selectbox){
	for (var count = selectbox.options.length ; count >= 0 ; count--){
		selectbox.remove(count);
	}
}
function isNoStateFound(dropDownObject){
	if(dropDownObject.name.indexOf('shipStateValue')!=-1){
		removeAllOptions(document.getElementById("shipCityValue"));
		addOption(document.getElementById("shipCityValue"),"--Please Select--","");
	}
	if(dropDownObject.name.indexOf('billStateValue')!=-1){
		removeAllOptions(document.getElementById("billCityValue"));
		addOption(document.getElementById("billCityValue"),"--Please Select--","");
	}
	if(dropDownObject.name.indexOf('myForm:state')!=-1){
		removeAllOptions(document.getElementById("myForm:city"));
		addOption(document.getElementById("myForm:city"),"--Please Select--","");
	}
}
function filldropDown(dropDownObject,buffer){
	addOption(dropDownObject,"--Please Select--","");
	if(buffer!=""){
		var finalBuffer = buffer;
		var keyValuePair= finalBuffer.split(',');
		for(var i=0; i< keyValuePair.length;i++){
			var keyValue = keyValuePair[i].split(':');
			if(keyValue.length == 2){
				addOption(dropDownObject,keyValue[0],keyValue[1]);
			}
		}
	}
	else{
		isNoStateFound(dropDownObject);
	}
}
function getHTTPObject(){
	var xmlHttp;
	try {
		xmlHttp=new XMLHttpRequest();// Firefox, Opera 8.0+, Safari
	}catch (e) {
		try	{
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");// Internet Explorer
		}catch (e){
			try	{
				xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
			}catch (e){
				alert("Your browser does not support AJAX!");
				xmlHttp=false;
			}
		}
	}
	return xmlHttp;
}
function resetShippingAddress(){
	var shipUatObj = document.getElementById("shipUat");
	if(shipUatObj!=undefined && shipUatObj!=null){
		shipUatObj.options.selectedIndex=0;		
	}
	for(var i=0;i<shipAddressObjects.length;i++){
		document.getElementById(shipAddressObjects[i]).value="";
	}
	removeAllOptions(document.getElementById("shipStateValue"));
	addOption(document.getElementById("shipStateValue"),"--Please Select--","");
	removeAllOptions(document.getElementById("shipCityValue"));
	addOption(document.getElementById("shipCityValue"),"--Please Select--","");	
}


