var PAGE_NAME = '';

function jsSearchSuppliers(cnt)
{
	//alert('text' + document.getElementById("refreshed").value);
	// check data 
	// calendar
	// property type
	// radius
	// number of people -> missing
	if(prepareSubmit() == false)
	{
		return;
	}
	
	if($("#checkInDate").val().length <= 0)
	{
		alert("Please enter a valid checkin date");
		return;
	}
	
	if($("#checkOutDate").val().length <= 0)
	{
		alert("Please enter a valid checkout date");
		return;
	}

	var pageUrl = window.location.href;
	var mySplitUrl = pageUrl.split("?");
	
	// FIX ME: check number of nights!

	
	var people = 1;
	var checkIn	= $("#checkInDate").val();
	var checkOut= $("#checkOutDate").val();
	
	var checkInFiledValue  = checkIn.split("/");

	var nCheckInYear = checkInFiledValue[2];
	
	if(nCheckInYear.length <= 2)
	{
		nCheckInYear = '20' + nCheckInYear;
	}	
	
	var checkInDate = new Date(nCheckInYear, parseInt(checkInFiledValue[0] - 1)  , checkInFiledValue[1] ); //Month is 0-11 in JavaScript
	
	var checkinDateFormatted = checkInDate.getFullYear() + '' 
									+ formatnumfordate(checkInDate.getMonth() + 1)
									+ formatnumfordate(checkInDate.getDate());
	
	var nights = 1;
	if (checkOut == "")
	{
		//alert("empty");
		// CANCEL SEARCH HERE!
	}
	else
	{
		var checkOutFiledValue = checkOut.split("/");
		
		var nCheckOutYear = checkOutFiledValue[2];
	
		if(nCheckOutYear.length <= 2)
		{
			nCheckOutYear = '20' + nCheckOutYear;
		}	
		
		var checkOutDate  = new Date(nCheckOutYear, parseInt(checkOutFiledValue[0] - 1)  , checkOutFiledValue[1] ); //Month is 0-11 in JavaScript
		
		nights = Math.round(( checkOutDate.getTime() - checkInDate.getTime() ) / (1000*60*60*24));
	}
	
	if(nights < 1 || nights > 30)
	{
		alert("Number of nights can not be more then 30");

		return;
		// CANCEL SEARCH HERE!
	}
	
	
	var radius = 10;//$('sld_max_radius_value').value;


	var checkInParam = checkIn.replace(/-/g, "");
	checkinDateFormatted = checkinDateFormatted.replace(/-/g, "");
	
	var property_type = "";
	
	if ($('#Hotel:checked').is(':checked')) 
	{
		property_type = property_type + 'hotel';
	}
	
	if ($('#Hostel:checked').is(':checked')) 
	{
		property_type = property_type + ' hostel';
	}
	
	if ($('#Motel:checked').is(':checked')) 
	{
		property_type = property_type + ' motels';
	} 
	
	if ($('#GuesthouseAndBedAndBreakfast:checked').is(':checked')) 
	{
		property_type = property_type + ' guesthouseandbnb';
	} 
	
	if ($('#Campsite:checked').is(':checked')) 
	{
		property_type = property_type + ' campsite';
	} 
	
	if ($('#ApartmentAndVilla:checked').is(':checked')) 
	{
		property_type = property_type + ' apartmentandvilla';
	} 
	
	if ($('#Resort:checked').is(':checked')) 
	{
		property_type = property_type + ' resort';
	} 

	property_type = property_type.replace(/ /g, "%2C");
	
	
	//displayWaitingPicture('divSearchResults', 80);
	showWaitMsg("Now Loading...");
	
	$.getJSON("/library/ajax/ajax_search_suppliers.php?c=" + cnt 
			+ "&type=" + property_type
			+ "&d=" + checkinDateFormatted
			+ "&n=" + nights
			+ "&p=" + people
			+ "&radius=" + radius
			+ "&isMapPage=" + isShowMap, 
		function(json)
		{
			hideWaitMsg();
			$("#divSearchResults").html(json.searchResult);
			$("#checkin").val(json.checkin);
			$("#checkout").val(json.checkout);
			if($("#divPriceRange").length>0){
				$("#divPriceRange").html(json.priceRangeSlider);
			}
		}
	);
	
}

function formatnumfordate(nVal)
{
	if(nVal < 10)
	{
		nVal = '0' + nVal;
	}
	
	return nVal;

}


/*function jsDisplayResults()
{
	
	//displayWaitingPicture('divSupplierResults', 10);
	
	showWaitMsg("Now Loading...");
	$.getJSON("/library/ajax/ajax_display_results.php?isMapPage=" + isShowMap,
       function(json)
	   {

			hideWaitMsg();
			GUnload();
			
			setTimeout(function (){
				$("#divSearchResults").html(json.searchResult);
				if($("#divPriceRange").length>0){
					$("#divPriceRange").html(json.priceRangeSlider);
				}
			}, 200);
		}
	);

}*/

function displayWaitingPicture(oid, margin)
{
	$("#divSearchResults").html('<div style="text-align:center;"><img src="images/waiting/wait100.gif" alt=""/></div>');

}

function toggleCheckbox() 
{
	var setTo = false;
	
	if($('#All').is(':checked'))
	{
		setTo = true;
	}
	else
	{
		setTo = false;
	}
	
	$('#Hotel').attr('checked', setTo);
	$('#Hostel').attr('checked', setTo);
	$('#Motel').attr('checked', setTo);
	$('#GuesthouseAndBedAndBreakfast').attr('checked', setTo);
	$('#Campsite').attr('checked', setTo);
	$('#ApartmentAndVilla').attr('checked', setTo);
	$('#Resort').attr('checked', setTo);
	
}

function jsChangePage(pid)
{

	/*
	showWaitMsg("Now Loading...");
	GDownloadUrl("/library/ajax/ajax_change_page.php?p=" + pid + "&isMapPage=" + isShowMap, 
		function(data, responseCode) {
			hideWaitMsg();
			if(data!=null){
				json = eval('('+data+')');
				$("#divHotelItems").html(json.searchResult);
				window.scrollTo(0, 0);
			}
		}
	);
	*/

	showWaitMsg("Now Loading...");
	
	$.getJSON("/library/ajax/ajax_change_page.php?p=" + pid + "&isMapPage=" + isShowMap,
	   function(json)
	   {

			hideWaitMsg();
			if(jQuery("#map_canvas").html() != ''){
				GUnload();
			}

			setTimeout(function (){
				jQuery("#divSearchResults").html(json.searchResult); 
				window.scrollTo(0, 0);}
			, 200);
			
		}
	);

}

function jsSortResults(criteria, direction)
{
	//displayWaitingPicture('divSearchResults', 10);
	
	if(criteria == "price")
	{
		$("#lnksortprice").css("color", "#F7541E");
		$("#lnksortdistence").css("color", "#238CC3");
		$("#lnksortname").css("color", "#238CC3");
	}
	else if(criteria == "distance")
	{
		$("#lnksortprice").css("color", "#238CC3");
		$("#lnksortdistence").css("color", "#F7541E");
		$("#lnksortname").css("color", "#238CC3");
	}
	else if(criteria == "name")
	{
		$("#lnksortprice").css("color", "#238CC3");
		$("#lnksortdistence").css("color", "#238CC3");
		$("#lnksortname").css("color", "#F7541E");
	}
	else
	{
		$("#lnksortprice").css("color", "#F7541E");
		$("#lnksortdistence").css("color", "#238CC3");
		$("#lnksortname").css("color", "#238CC3");
	}
	
	showWaitMsg("Now Loading...");

	$.getJSON("/library/ajax/ajax_sort_results.php?sort_criteria=" + criteria + "&sort_direction=" + direction+"&isMapPage=" + isShowMap,
       function(json)
	{

			hideWaitMsg();

			setTimeout(function (){
				$("#divSearchResults").html(json.searchResult);
			}, 200);
			
	}
	);
}

function jsChangeCurrency(cid, people, search_page)
{

	if(cid > 0)
	{
		showWaitMsg("Now Loading...");

		/*
		GDownloadUrl('/library/ajax/ajax_change_currency.php?cid='+cid+'&isSearchPage='+search_page+ "&isMapPage=" + isShowMap, 
			function(data, responseCode) {
				hideWaitMsg();
				if(data!=null){
					json = eval('('+data+')');
					$("#divHotelItems").html(json.searchResult);
					if($("#divPriceRange").length>0){
						$("#divPriceRange").html(json.priceRangeSlider);
					}
				}
			}
		);
		*/
		
		$.getJSON('/library/ajax/ajax_change_currency.php?cid='+cid+'&isSearchPage='+search_page+ "&isMapPage=" + isShowMap,
		   function(json)
		   {

				hideWaitMsg();
				if(jQuery("#map_canvas").html() != ''){
					GUnload();
				}
				setTimeout(function (){
					$("#divSearchResults").html(json.searchResult);
					if($("#divPriceRange").length>0){
						$("#divPriceRange").html(json.priceRangeSlider);
					}
				}, 200);
				
			}
		);
	}
}

function hidemapicons()
{
	if(PAGE_NAME == 'search')
	{
		$(".mapicon").hide();
	}
}


function displayHostelBookersWindow(url, fwUrl, fwName, startDate, nights, selectedLocation)
{
	var name = 'HostelBookers';
	var features = 'height=600,width=800,left=300,top=0';
//, name, features + ",scrollbars=yes,status=yes,toolbar=yes,menubar=no,location=no,resizable=yes,titlebar=no"

	var win = window.open(url+"?url="+escape(fwUrl)+"&toName="+escape(fwName)+"&startDate="+escape(startDate)+"&selectedNights="+escape(nights)+"&selectedLocation="+escape(selectedLocation));
}


function jsChangePriceRange(minPrice, maxPrice)
{
	showWaitMsg("Now Loading...");
	$.ajax({
		url: '/library/ajax/ajax_change_price_range.php?p=' + 1 + '&minPrice=' + minPrice + '&maxPrice=' + maxPrice + "&isMapPage=" + isShowMap,
		type: 'GET',
		dataType: 'json',
		error: function(){
			hideWaitMsg(1);
		},
		success: function(json){
			hideWaitMsg(1);
			setTimeout(function (){jQuery("#divSearchResults").html(json.searchResult);}, 200);
		}
	});

}

function jsChangeSearchPriceRange(minPrice, maxPrice)
{
	showWaitMsg("Now Loading...");
	$.ajax({
		url: '/library/ajax/ajax_change_price_range.php?p=' + 1 + '&minPrice=' + minPrice + '&maxPrice=' + maxPrice + '&isSearchPage=1&isMapPage=' + isShowMap,
		type: 'GET',
		dataType: 'json',
		error: function(){
			hideWaitMsg(1);
		},
		success: function(json){
			hideWaitMsg(1);
			setTimeout(function (){$("#divSearchResults").html(json.searchResult);}, 200);
		}
	});
}


function cancelCheckAll(){
	$('#All').attr('checked', false);
}

function gotoDetailPage(url){
	url+='&isMapPage=' + isShowMap;
	window.location = url;
}

function openMarkerWindow(index){
	showMap();
	for(i =0;i<arrMarkers.length;i++){
		var item = arrMarkers[i];
		if(item.index == index){
			//for (var a in item.marker){
			//	str+= a+' => '+item.marker[a]+'\r\n';
			//}
			GEvent.trigger(item.marker, "click")
			//item.marker.click();
			break;
		}
	}
	window.scrollTo(0, 0);
}

function trim(src){
	return src == null ? "" : src.replace(/(^\s*)|(\s*$)/g, "");
}