var options2;
mAjax.url = '/ajax/merchants/vacation.json.php';

function searchbox_ready() {
	var errors=Array();
	var dataForm = document.forms.ExpressBkFltonly;
	var dep = dataForm.inp_dep_arp_cd_1.value;
	var arr = dataForm.arr ? dataForm.arr.value : dataForm.inp_arr_arp_cd_1.value;
	var d1 = dataForm["air_leave_day"].selectedIndex + 1;
	var m1 = dataForm["air_leave_month"].selectedIndex;
	var y1 = dataForm["air_leave_year"].selectedIndex + 2006;
	var d2 = dataForm["air_return_day"].selectedIndex + 1;
	var m2 = dataForm["air_return_month"].selectedIndex;
	var y2 = dataForm["air_return_year"].selectedIndex + 2006;
	var children = dataForm["childrenAir"].value;
	var depDate = new Date();
	depDate.setFullYear(y1, m1, d1);
	var arrDate = new Date();
	arrDate.setFullYear(y2, m2, d2);
	var today = new Date();
	if(children>0) for(var i=1; i<=children; i++) if(document.getElementById("child"+i+"age").value == 0) errors[5]=true;
	if (dep==coap || dep == "") errors[1]=true;
	if (arr==coap || arr == "" || arr==-1) errors[2]=true;
	if(depDate>arrDate) errors[3]=true;
	if(depDate<today) errors[4]=true;
	return errors
};
 
function jump(id, merchant) {
	var dataForm= document.forms.ExpressBkFltonly
	var myWinWidth = screen.width * 0.8;
	var myWinHeight = screen.height * 0.8;
	var myWinCoord = "left="+newWinX+",top="+newWinY+",width="+myWinWidth+",height="+myWinHeight+",resizable = yes,scrollbars=yes, toolbar=yes, location=yes";
	var fromAir = dataForm.inp_dep_arp_cd_1.value;
	var toAir = document.getElementById("arr") ? document.getElementById("arr").value : dataForm.arrcode.options[dataForm.arrcode.selectedIndex].text;
	var arrcode = document.getElementById("arr") ? "" : dataForm.arrcode.value;
	var arr = document.getElementById("arr") ? document.getElementById("arr").value : "";
	if(fromAir== coap || toAir== coap || fromAir=="" || toAir=="" || arrcode==-1) {
		alert(cityOrCodeError);
		return false;
	}
	var fromAirCity = '';
	var toAirCity = '';
	var idx = fromAir.indexOf("(");
	if(idx >= 0) {
		fromAirCity = fromAir.substring(0,idx-1);
		fromAir = fromAir.substring(idx+1, fromAir.length-1);
	}
	var idx = arr.indexOf("(");
	if(idx >= 0) {
		arr = arr.substring(idx+1, arr.length-1);
	}
	var leaveDay = dataForm.leave_day.value;
	var leaveMonth = dataForm.leave_month.value;
	var leaveYear = dataForm.leave_year.value;
	var returnDay = dataForm.return_day.value;
	var returnMonth = dataForm.return_month.value;
	var returnYear = dataForm.return_year.value;
	var leaveDate = new Date();
	leaveDate.setFullYear(leaveYear,leaveMonth,leaveDay);
	var returnDate = new Date();
	returnDate.setFullYear(returnYear,returnMonth,returnDay);
	if(leaveDate>returnDate) {
		alert(dateError);
		return false;
	}
	var adults = dataForm.inp_adult_pax_cnt.value;
	var children = dataForm.inp_child_pax_cnt.value;
	var child1age = 0;
	var child2age = 0;
	var child3age = 0;
	var child4age = 0;
	for(var i=1; i<=children; i++)
		if(dataForm["child"+i+"age"].value==0) {
			alert(errorMsg+chAgeError);
			return false;
		} else
			eval("child"+i+"age = "+document.forms.ExpressBkFltonly["child"+i+"age"].value);
	var seniors = dataForm.inp_senior_pax_cnt.value;
	var rooms = dataForm.no_rooms.value;
	var link = linkCounter +  '?merchant='+merchant+'&logo='+logoImg+'&fromair='+fromAir+'&fromAirCity='+fromAirCity+'&arrcode='+arrcode+"&arr="+arr+'&departday='+leaveDay+'&departmonth='+leaveMonth+'&departyear='+leaveYear+'&returnday='+returnDay+'&returnmonth='+returnMonth+'&returnyear='+returnYear+'&adults='+adults+'&childrens='+children+'&seniors='+seniors+'&no_rooms='+rooms+'&intitem='+id+"&child1age="+child1age+"&child2age="+child2age+"&child3age="+child3age+"&child4age="+child4age+'&idReferral='+idReferral+'&adid='+adid+'&querycode='+queryCode+'&subID='+subID+'&language='+lang+'&searchsystem='+searchsystem+'&user_country='+searchsystem;
	newWin = window.open(link,"_blank",myWinCoord);
}

function remove_map() {
	$(document).ready(function() {
		$(".results").empty();
		$(".map_maindiv").remove();
	});
};

function create_map() {
	$(document).ready(function(){
		if ($.browser.msie && $.browser.version=="6.0") {$("body").append('<iframe src="about:blank" class="map_maindiv" style="width:620px;height:520px;z-index:0;"></iframe>');};
		$("body").append('<div class="map_maindiv" onclick="">\
				<div class="results_top">\</div>\
				<div class="results tac">\
					<div class="frt close_button"><img id="map_close_button" src="/images/close.gif" onclick="remove_map();"></div>\
					<br>\
						'+search_for_your_own_destination+':&nbsp;\
						<input type="text" id="destination" class="mr10" name="destination" onchange="document.getElementById(\'destination_id\').value=\'\';document.getElementById(\'destinationgroup_id\').value=\'\';">\
						<input type="hidden" id="destination_id" name="destination_id">\
						<input type="hidden" id="destinationgroup_id" name="destinationgroup_id">\
						<input type="image" alt="Go" tabindex="14" src="/images/go.gif" class="go_img" name="go" onclick="goback(document.getElementById(\'destination\').value,document.getElementById(\'destination_id\').value,document.getElementById(\'destinationgroup_id\').value);return false;"/><br>\
					'+or_select_a_region_from_the_map+'\
					<br/><div id="map_div">&nbsp;</div>\
				</div>\
				<br><br>\
				<div class="results_bottom"></div>\
			</div>');

		$(document).ready(function() {
			var options2 = {
			delay: 175,
			script: "/ajax/vac_ajax_autosuggest.php?searchsystem="+searchsystem,
			json: true,
			minchars: 3,
			meth: "GET",
        		frameForIE: true,
			ajaxParams: {action: '' , json : true },
			callback:function(selLiObj) {
				document.getElementById('destination_id').value = selLiObj.id.replace(/\|.*/,'');
				document.getElementById('destinationgroup_id').value = selLiObj.id.replace(/.*\|/,'');
				return selLiObj.innerHTML.replace(/<\/?b>/gi,'')+" ";
				}
			};
			as_City = new AutoSuggest('destination', options2);
			map = new GMap(document.getElementById("map_div"));
			map.addControl(new GSmallMapControl());
			map.addControl(new GMapTypeControl());
			cnt = new GLatLng(init_lat, init_lng);
			map.setCenter(cnt,init_zoom);
			map.setZoom(init_zoom);
			bounds = map.getBounds();
			GEvent.addListener(map, "click",function(marker, point) {
				if (!marker) {
					if (box) map.removeOverlay(box);
					add_box(point);
				}
 			});
			GEvent.addListener(map, "zoomend",function() {
				bounds = map.getBounds();
				map.closeInfoWindow();
				map.removeOverlay(box);
				if (map.getZoom()>7) {
					marker_count = 1;
					bounds = map.getBounds();
					var params = "n=" +  bounds.getNorthEast().lat() + "&w=" + bounds.getSouthWest().lng()
								+ "&s=" + bounds.getSouthWest().lat() + "&e=" + bounds.getNorthEast().lng()
								+ "&idReferral=" + document.getElementById('idReferral').value + "&adid=" + document.getElementById('adid').value;
		
				}
				else map.clearOverlays();
 			});
		});

	});
return false;
};

function add_box(latlng) {
	click_latlng = latlng;
	var point = map.fromLatLngToDivPixel(latlng);
	var nePoint = new GPoint(point.x + 20, point.y - 20);
	var swPoint = new GPoint(point.x - 20, point.y + 20);
	var ne = map.fromDivPixelToLatLng(nePoint);
	var sw = map.fromDivPixelToLatLng(swPoint);
	var nw = new GLatLng(ne.lat(), sw.lng());
	var se = new GLatLng(sw.lat(), ne.lng());

	box = new GPolyline([ne, se, sw, nw, ne], "#FF6300", 2, .80);
	map.addOverlay(box);
	var _params = "searchsystem="+searchsystem+"&center_x=" + latlng.lng() + "&center_y=" + latlng.lat() + "&n=" +  nw.lat() + "&w=" + nw.lng() + "&s=" + se.lat() + "&e=" + se.lng() + "&zoom=" + map.getZoom() + "&idReferral=" + idReferral + "&adid=" + adid;
	show_bubble(latlng, _params);
	map.recenterOrPanToLatLng(latlng);
}

function show_bubble(latlng, _params) {
	var _html = "<div id='map_inner_div' valign='middle'><div align='center'> <br/> <br/> <br/>  <img src='http://travelgrove.com/community/images/global/waiting.gif'/></div></div>";
	map.openInfoWindowHtml(latlng, _html);
	setTimeout(function(){
		$(function(){makeRequest('vac_get_map_cities.php', _params, $('#map_inner_div').get(0));});
	},1000);
 }

function makeRequest(_url, _params, _div) {
	_url = "/ajax/" + _url;

	$.get(_url + "?" + _params + "&rand=" + Math.random(),function(data){
				var response = eval(data);
				if (response.length==0) {
					var responsetext="";
					$('#map_inner_div').html("<div id='as_gm'></div>");
					//_div.innerHTML = "<div id='as_gm'></div>";
					$('<b>'+no_destinations_found+'</b><br><br><div style="letter-spacing:0.5px;">'+no_destinations_found_in_selected_region+':&nbsp;</div><input type="text" id="destination2" class="textinput" name="destination2"><input type="hidden" id="destination_id2" class="textinput mr10" name="destination_id2"><input type="hidden" id="destinationgroup_id2" class="textinput mr10" name="destinationgroup_id2"><input type="image" class="go_img" alt="Go" tabindex="14" src="/images/go.gif" name="go" onclick="goback(document.getElementById(\'destination2\').value,document.getElementById(\'destination_id2\').value,document.getElementById(\'destinationgroup_id2\').value);return false;"/>').appendTo(	$('#as_gm')	).load(function() {});
				options2 = {delay: 175,script: '/ajax/vac_ajax_autosuggest.php?searchsystem='+searchsystem,json: true,minchars: 3,meth: 'GET',frameForIE: true,ajaxParams: {action: '' , json : true },callback:function(selLiObj) {document.getElementById('destination_id2').value = selLiObj.id.replace(/\|.*/,'');document.getElementById('destinationgroup_id2').value = selLiObj.id.replace(/.*\|/,'');return selLiObj.innerHTML.replace(/<\/?b>/gi,'')+" ";}};
				$(function() {
					setTimeout("as_City = new AutoSuggest('destination2', options2);",1500);
				});} else {
					var responsetext = "<b style='height: 25px; font-size: 16px;'>"+destinations_found+":</b><br>";
					for (i=0;i<response.length;i++) {
						responsetext = responsetext + "<a href='http://travelgrove.com/vacations.php?searchsystem="+searchsystem+"&idReferral="+idReferral+"&adid="+adid+"&arr="+response[i].destination+"' class='destination' onclick='return goback(\""+response[i].destination+"\",\""+response[i].id+"\",\""+response[i].grid+"\");' target='_main'>"+response[i].destination+" ("+response[i].group+")</a><br>"
					}
				}
				if (response.length>5) responsetext = responsetext+"<div style='text-align: center; font-size: 12px; font-weight: bold; cursor: pointer;' onclick='zoomIn(0, 0);'><img src='http://travelgrove.com/community/images/global/mag.gif' style='position: relative; top: 4px;'> "+zoom_in_to_see_more+"</div>";
				if (responsetext!="") $('#map_inner_div').html(responsetext);

	});
}

function zoomIn(_lat, _lng) {
	if (_lat=='0' && _lng=='0') {
		map.setCenter(click_latlng, map.getZoom()+2);
	}
	else {
		_center = new GLatLng(_lat, _lng);
		map.setCenter(_center, 8);
	}
}


function zoomOut(_lat, _lng) {
	_center = new GLatLng(_lat, _lng);
	map.setCenter(_center, 2);
}

function goback(destname,id,grid){
	id = id ? id : 0;
	$("#arr")[0].value=destname;
	remove_map();
	return false;
}
