function getObj(name) {
	if (document.getElementById) {
		if(document.getElementById(name)) {
			this.obj = document.getElementById(name);
			this.style = document.getElementById(name).style;
		}
	}
	else if (document.all) {
		if(document.all[name]) {
			this.obj = document.all[name];
			this.style = document.all[name].style;
		}
	}
	else if (document.layers) {
		if (document.layers[name]) {
			this.obj = document.layers[name];
			this.style = document.layers[name];
		}
	}
}

function createRequestObject() {
	req = false;
	// branch for native XMLHttpRequest object
	if(window.XMLHttpRequest) {
		try {
			req = new XMLHttpRequest();
		}
		catch(e) {
			req = false;
		}

		// branch for IE/Windows ActiveX version
	}
	else if(window.ActiveXObject) {
	 	try {
			req = new ActiveXObject("Msxml2.XMLHTTP");
		} 
		catch(e) {
			try {
				req = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(e) {
				req = false;
			}
		}
	}
	
	return req;	
}

// -- create xmlhttprequest object --
var http = createRequestObject(); 
// -- create xmlhttprequest object --
function explodeArray(item, delimiter) {
	if ( !item ) return false;
	tempArray = new Array(1);
	var Count = 0;
	var tempString = new String(item);
	while (tempString.indexOf(delimiter) > 0) {
		tempArray[Count] = tempString.substr(0, tempString.indexOf(delimiter));
		tempString = tempString.substr(tempString.indexOf(delimiter)+1,tempString.length-tempString.indexOf(delimiter)+1);
		Count = Count+1;
	}
	tempArray[Count] = tempString;
	return tempArray;
}
function getResorts() {
	if( !http ) {
		return false;
	}

	oChoiceSelected = new getObj('continent');
	oType = new getObj('hid_type');
	
	if( !oChoiceSelected.obj || !oType ) {
		return false;
	}
	

	if( !oChoiceSelected.obj.value || !oType.obj.value || (oChoiceSelected.obj.value == "0")) {
		return false;
	}

	http.open('get', 'ajax-process.php?dest=' + oChoiceSelected.obj.value + '&type=' + oType.obj.value);
	http.onreadystatechange = handleResort; 
	http.send(null);
}

function handleResort() {
	/* 
		Make sure that the transaction has finished. The XMLHttpRequest object 
		has a property called readyState with several states:
		0: Uninitialized
		1: Loading
		2: Loaded
		3: Interactive
		4: Finished 
	*/
	if(http.readyState == 4){ //Finished loading the response
		var response = http.responseText;
		
		oResSelect = new getObj('country');
		if( !oResSelect.obj ) return false;
		// clean up the drop-down list

		oResSelect.obj.options.length = 0;
		/*
		for(var k = 0; k < oResSelect.obj.length; k++) {
			oResSelect.obj.options[k] = null;
		}
		*/

		if( !response ) {
			return;
			
			
		}
		
		oResSelect.obj.options[0] = new Option('All Resorts', 0, true, true);
		
		arr = explodeArray(response, ',');
		for(var i = 0; i < arr.length; i++) {
			if( !arr[i] ) return false;
			temp = explodeArray(arr[i], '&');	
			resID = temp[0];
			resName = temp[1];
			if( resID == 'undefined' || resID == null ) return false;
			
			oResSelect.obj.options[i+1] = new Option(resName, resID, false, false);
		}
	}
}

function getRooms() {
	if( !http ) {
		return false;
	}

	oChoiceSelected = new getObj('country');
	oType = new getObj('hid_type');
	
	if( !oChoiceSelected.obj || !oType ) {
		return false;
	}

	if( !oChoiceSelected.obj.value || !oType.obj.value ) {
		return false;
	}
	var addy = 'ajax-process-rooms.php?resort=' + oChoiceSelected.obj.value + '&type=' + oType.obj.value;
	//alert(addy);
	http.open('get', addy);
	http.onreadystatechange = handleRooms; 
	http.send(null);
}
function handleRooms() {
	/* 
		Make sure that the transaction has finished. The XMLHttpRequest object 
		has a property called readyState with several states:
		0: Uninitialized
		1: Loading
		2: Loaded
		3: Interactive
		4: Finished 
	*/
	if(http.readyState == 4){ //Finished loading the response
		var response = http.responseText;
		//alert(response);
		
		oResSelect = new getObj('room');
		oResSelect = document.getElementById('rooms');

		//if( !oResSelect.obj ) return false;
		// clean up the drop-down list
		oResSelect.options.length = 0;
		/*
		for(var k = 0; k < oResSelect.obj.length; k++) {
			oResSelect.obj.options[k] = null;
		}
		*/

		//if( !response ) {
			oResSelect.options[0] = new Option('Select Room', 0, true, true);
			//return;
		//}
		
		arr = explodeArray(response, ',');
		
		for(var i = 0; i < arr.length; i++) {
			if( !arr[i] ) return false;
			if( arr[i] == 'undefined' || arr[i] == null ) return false;
			
			oResSelect.options[i+1] = new Option(arr[i], arr[i], false, false);
		}
	}
}

function countryChange(selectObj) {
	var idx = selectObj.selectedIndex;
	var which = selectObj.options[idx].value;
	
	var sal=document.getElementById('sale');
	var rem=document.getElementById('rent');
	
	if(sal.checked)
	{
	cList = countryLists[which];
		}
	if(rem.checked)
	{
		cList=test[which];
	
	}
	var cSelect = document.getElementById("country");
	// remove the current options
	var len=cSelect.options.length;
	while (cSelect.options.length > 0) {
		cSelect.remove(0);
	}
	var newOption;
	for (var i=0; i<cList.length; i++) {
		newOption = document.createElement("option");
		newOption.value = cList[i];  // assumes option string and value are the same
		newOption.text=cList[i];
		try {
			cSelect.add(newOption);  // this will fail in Dom browsers
		}
		catch (e) {
			cSelect.appendChild(newOption);
		}
	}
}
function change(clasa)
{
	var sal=document.getElementById('sale');
	document.getElementById("tabel").className=clasa;
	if(clasa == 'other')	{
		document.getElementById('first1').style.display = "none";
		document.getElementById('first2').style.display = "none";
		//document.getElementById('radiou1').style.display = "none";
		//document.getElementById('radiou2').style.display = "none";
		document.getElementById('change').style.display = "";
		document.getElementById('radiotr').style.display = "none";
		
	}
	else	{
		document.getElementById('first1').style.display = "";
		document.getElementById('first2').style.display = "";
		//document.getElementById('radiou1').style.display = "";
		//document.getElementById('radiou2').style.display = "";
		document.getElementById('change').style.display = "none";
		document.getElementById('radiotr').style.display = "";
	}
}
function hideFields(selectedItem)	{
	if(selectedItem == 'land' || selectedItem == 'lots')	{
		document.getElementById("not_at_land1").style.display = "none";
		document.getElementById("not_at_land2").style.display = "none";
		document.getElementById("not_at_land3").style.display = "none";
		document.getElementById("not_at_land4").style.display = "none";
		document.getElementById("not_at_land5").style.display = "none";
		document.getElementById("not_at_land6").style.display = "none";
	}
	else	{
		document.getElementById("not_at_land1").style.display = "";
		document.getElementById("not_at_land2").style.display = "";
		document.getElementById("not_at_land3").style.display = "";
		document.getElementById("not_at_land4").style.display = "";
		document.getElementById("not_at_land5").style.display = "";
		document.getElementById("not_at_land6").style.display = "";
	}
	
}

function hideFields2(selectedItem)	{
	if(selectedItem == 'rent' || selectedItem == 'salerent')	{
		document.getElementById("rent1").style.display = "";
		document.getElementById("rent2").style.display = "";
		document.getElementById("rent3").style.display = "";
	}
	else	{
		document.getElementById("rent1").style.display = "none";
		document.getElementById("rent2").style.display = "none";
		document.getElementById("rent3").style.display = "none";
	}
}
