
Event.observe(window, 'load', init, false);

function init(){
	Event.observe('com_bughoteltraveltripquote_country_component', 'change', com_bughoteltraveltripquote_country_component, false);
	Event.observe('com_bughoteltraveltripquote_zone', 'change', com_bughoteltraveltripquote_zone, false);
}
//
var CurrentCountry;
//
// Ajax Dynamic (Country/Zone/City)
//
function com_bughoteltraveltripquote_country_component(){
	//
	// Countries
	//
	document.getElementById("comBugHotelTravel_search").disabled = true;
	document.getElementById("com_bughoteltraveltripquote_country_component").disabled = true;
	document.getElementById("com_bughoteltraveltripquote_zone").disabled = true;
	document.getElementById("com_bughoteltraveltripquote_city").disabled = true;
	var url = 'components/com_bughoteltraveltripquote/zones.php';
	if (CurrentCountry!=document.getElementById("com_bughoteltraveltripquote_country_component").value) {
		document.getElementById("pleasewait").style.display = "";
		// var pars = 'country_id='+document.getElementById("com_bughoteltraveltripquote_country_component").value;
		var pars = 'country_id='+ document.getElementById("com_bughoteltraveltripquote_country_component").value;
		//
		// Zones/Regions
		//
		var myAjax = new Ajax.Request(url, {method: 'get', parameters: pars, onComplete: getResponseCountry});
		//
		// Cities
		//
		// var pars = 'country_id='+escape($F('com_bughoteltraveltripquote_country_component')) + '&state_id='+escape($F('com_bughoteltraveltripquote_zone'));
		var pars = 'country_id='+ document.getElementById("com_bughoteltraveltripquote_country_component").value + '&state_id='+ document.getElementById("com_bughoteltraveltripquote_zone").value;
		var url = 'components/com_bughoteltraveltripquote/cities.php';
		var myAjax = new Ajax.Request(url, {method: 'get', parameters: pars, onComplete: getResponseCountryForCities});
	}
}
//
// Ajax Dynamic (Country/Zone/City) - Lost Focus
//
function com_bughoteltraveltripquote_country_component_blur(){
	var url = 'components/com_bughoteltraveltripquote/zones.php';
	if (CurrentCountry!=document.getElementById("com_bughoteltraveltripquote_country_component").value) {
		document.getElementById("pleasewait").style.display = "";
		// var pars = 'country_id='+document.getElementById("com_bughoteltraveltripquote_country_component").value;
		var pars = 'country_id='+ document.getElementById("com_bughoteltraveltripquote_country_component").value;
		//
		// Zones/Regions
		//
		var myAjax = new Ajax.Request(url, {method: 'get', parameters: pars, onComplete: getResponseCountry});
		//
		// Cities
		//
		// var pars = 'country_id='+escape($F('com_bughoteltraveltripquote_country_component')) + '&state_id='+escape($F('com_bughoteltraveltripquote_zone'));
		var pars = 'country_id='+ document.getElementById("com_bughoteltraveltripquote_country_component").value + '&state_id='+ document.getElementById("com_bughoteltraveltripquote_zone").value;
		var url = 'components/com_bughoteltraveltripquote/cities.php';
		var myAjax = new Ajax.Request(url, {method: 'get', parameters: pars, onComplete: getResponseCountryForCities});
	}
}
//
// Ajax Dynamic (Zone/City)
//
function com_bughoteltraveltripquote_zone(){
	//
	// Cities
	//
	document.getElementById("comBugHotelTravel_search").disabled = true;
	document.getElementById("com_bughoteltraveltripquote_country_component").disabled = true;
	document.getElementById("com_bughoteltraveltripquote_zone").disabled = true;
	document.getElementById("com_bughoteltraveltripquote_city").disabled = true;
	document.getElementById("pleasewaitzones").style.display = "";
	// var pars = 'country_id='+escape($F('com_bughoteltraveltripquote_country_component')) + '&state_id='+escape($F('com_bughoteltraveltripquote_zone'));
	var pars = 'country_id='+ document.getElementById("com_bughoteltraveltripquote_country_component").value + '&state_id='+ document.getElementById("com_bughoteltraveltripquote_zone").value;
	//
	var url = 'components/com_bughoteltraveltripquote/cities.php';
	var myAjax = new Ajax.Request(url, {method: 'get', parameters: pars, onComplete: getResponseCountryForCities});
}

/* Country was selected from country function and we are going to populate the zones drop down box */

function getResponseCountry(oReq) {
	var returnValue = (oReq.responseText);
	var NumState = document.getElementById("com_bughoteltraveltripquote_zone").length;
	while(NumState > 0) {
		NumState--;
		document.getElementById("com_bughoteltraveltripquote_zone").options[NumState] = null;
	}
	if (returnValue != 0 && returnValue != "null") {
		eval("var decoded_data = " + returnValue);
		for (r=0;r<decoded_data.length;r++) {
			document.getElementById("com_bughoteltraveltripquote_zone").options[r] = new Option(decoded_data[r][1], decoded_data[r][0]);
		}
	} else {
		document.getElementById("com_bughoteltraveltripquote_zone").options[0] = new Option("None", 0);
	}
	document.getElementById("pleasewait").style.display = "none";
	document.getElementById("com_bughoteltraveltripquote_country_component").disabled = false;
	document.getElementById("com_bughoteltraveltripquote_zone").disabled = false;
	document.getElementById("com_bughoteltraveltripquote_city").disabled = false;
	document.getElementById("comBugHotelTravel_search").disabled = false;
}

function getResponseCountryForCities(oReq) {
	var returnValue = (oReq.responseText);
	var NumState = document.getElementById("com_bughoteltraveltripquote_city").length;
	while(NumState > 0) {
		NumState--;
		document.getElementById("com_bughoteltraveltripquote_city").options[NumState] = null;
	}
	if (returnValue != 0 && returnValue != "null") {
		eval("var decoded_data = " + returnValue);
		for (r=0;r<decoded_data.length;r++) {
			document.getElementById("com_bughoteltraveltripquote_city").options[r] = new Option(decoded_data[r][1], decoded_data[r][0]);
		}
	} else {
		document.getElementById("com_bughoteltraveltripquote_city").options[0] = new Option("None", 0);
	}
	document.getElementById("pleasewait").style.display = "none";
	document.getElementById("pleasewaitzones").style.display = "none";
	document.getElementById("com_bughoteltraveltripquote_country_component").disabled = false;
	document.getElementById("com_bughoteltraveltripquote_zone").disabled = false;
	document.getElementById("com_bughoteltraveltripquote_city").disabled = false;
	document.getElementById("comBugHotelTravel_search").disabled = false;
}
