

	function GetXmlHttpObject(){
		if (window.XMLHttpRequest){ return new XMLHttpRequest(); }// code for IE7+, Firefox, Chrome, Opera, Safari
		else if (window.ActiveXObject){  return new ActiveXObject("Microsoft.XMLHTTP"); } // code for IE6, IE5
		else {alert ("ERROR! Your browser does not support XMLHTTP!"); throw "ERROR: XMLHTTP not supported";}
		throw "FATAL ERROR - GetXmlHttpObject unreachable line";
	};
	
	
	//Open Popup Img
	function openimg(url,nome,w,h) {
		var features = 'width='+w+',height='+h+',top=200,left=200,toolbar=n o,resizable=no,menubar=no,location=no,status=yes,s crollbars=no';
		window.open(url,nome,features);
	}
	
	function googleSearch (objectid){
		value =document.getElementById(objectid).value;
		url='http://www.google.com/search?q=site:www.maraska.it '+
			value;
		document.location=url;
	}
	function getEnterLookFor(event, objectid){
		var key=event.keyCode || event.which;
		if (key==13){
			googleSearch (objectid)
		}
	}
	/**
	* action taken when radio button on a category/map/time is activated
	*/
	function updateQueryParameter(labelid, query){
		// document.body.style.cursor='wait';
		document.getElementById(labelid).innerHTML=query;
		showTrips();
	}
	
	/* User refined selection -> perform new query */
	function updateSomething(){ 
		showTrips2( );
	}

	/**
	 * Takes an array of checkboxes and compute the number 1+2+4+8+16...
	 * Used by getNumber
	 * */
	function getNumber(values){
		value=0;
		for (var i=0; i<values.length; i++) {
			key=values[i]+"_ch_id";
			if (document.getElementById(key).checked){
				value += parseInt( document.getElementById(key).value);
			}
		}
		return value;
	}	
	/**
	 * Read query parameters from HTML checkbuttons(zone, season, type, ...)
	 * and convert into PHP query "zone in ["Europe"]
	 * */	
	function getNumbers(){
		// tag=new Array("ontheroad","adventure","sea","city","events","sport");
		query="";
		// continent
		query+="&zones="+getNumber(zones);  // zones is autogenerated by php
		//query+="&seasons="	 +getNumber(seasons);
		query+="&tags="+getNumber(tags);
		query+="&medias="	 +getNumber(medias);
		return query;
	}
	/**
	 * 
	 * */		
	function updateDateParameter(labelid, query){
		document.getElementById(labelid).innerHTML=query;
		showRTW();
	}	
	
	/**
	* called by showTrips
	* each addQueryFor(zone, zonelabel)
	*/
	function addQueryFor(title, labelId){
		query="";
		if (document.getElementById(labelId).innerHTML!=""){
			query="&"+title+"="+document.getElementById(labelId).innerHTML;
		}
		return query;
	}
	function addQueryMonthFor(title, labelId){
		query="";
		var month=document.getElementById(labelId).innerHTML;
		if (month!=""){
			if (month=="summer"){
				query="&"+title+"="+"6,7,8";
			}else if (month=="winter"){
				query="&"+title+"="+"1,2,3,12";
			}else if (month=="spring"){
				query="&"+title+"="+"4,5,6";
			}else if (month=="autumn"){
				query="&"+title+"="+"9,10,11";
			}
		}
		return query;
	}	
	
	/** New method */
	function showTrips2( ){
		document.body.style.cursor='wait';
		// retrieve HTTP object
		xmlhttp=GetXmlHttpObject();
		// Set Success function 
		xmlhttp.onreadystatechange=function(){
			if (xmlhttp.readyState==4 && xmlhttp.status==200){
				document.getElementById("txtHint").innerHTML=
				'<div class=blogarticle>'+xmlhttp.responseText+'</div>';
				document.body.style.cursor='default';
			}
			show("resultdiv"); // show results
		}
		query=getNumbers();
		if (query!=""){
			url="blog.php?action=querytrip"+query;
			xmlhttp.open("GET",url, true);
			xmlhttp.send(null);
		}else{
			// No query - avoid connecting to DB and empty previous possible queries
			 document.getElementById("txtHint").innerHTML="";
			 document.body.style.cursor='default';
		}
	}	
	
	/* Used by old site - removeTODO  */
	function showTrips(){
		document.body.style.cursor='wait';
		// retrieve HTTP object
		xmlhttp=GetXmlHttpObject();
		// Set Success function 
		xmlhttp.onreadystatechange=function(){
			if (xmlhttp.readyState==4 && xmlhttp.status==200){
				document.getElementById("txtHint").innerHTML=
				'<div class=blogarticle>'+xmlhttp.responseText+'</div>';
				document.body.style.cursor='default';
			}
			show("resultdiv"); // show results
		}
		url= addQueryFor("zone", "zonelabel") 
			+ addQueryFor("category", "categorylabel")
			+ addQueryFor("source"  , "sourcelabel")
			+ addQueryMonthFor("month"  , "seasonlabel");
		if (url!=""){
			url="php/trips/tripsearch.php?action=query"+url;
			xmlhttp.open("GET",url, true);
			xmlhttp.send(null);
		}else{
			// No query - avoid connecting to DB and empty previous possible queries
			 document.getElementById("txtHint").innerHTML="";
			 document.body.style.cursor='default';
		}
	}
	
	/** Show RTW events */
	function showRTW(){
		document.body.style.cursor='wait';
		// retrieve HTTP object
		xmlhttp=GetXmlHttpObject();
		// Set Success function 
		xmlhttp.onreadystatechange=function(){
			if (xmlhttp.readyState==4 && xmlhttp.status==200){
				document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
				document.body.style.cursor='default';
			}
			show("resultdiv"); // show results
		}
		url=addQueryFor("date", "datelabel")
		if (url!=""){
			url="blog.php?action=queryblog"+url // +"&category=1";
			// alert(url);
			xmlhttp.open("GET",url, true);
			xmlhttp.send(null);
		}else{
			// No query - avoid connecting to DB and empty previous possible queries
			 document.getElementById("txtHint").innerHTML="";
			 document.body.style.cursor='default';
		}
	}	

	
	function createDateRadioButton(group, title, cat){
		//document.write( "<input class='radiotrip' type='radio' name="+"'"+group+"'"
		//	+" onclick='updateDateParameter("+'"'  + group + 'label",'+'"'  + cat + '"'+  ")'>" + title + "<br/>");
		document.write( "<label "
				+" onclick='updateDateParameter("+'"'  + group + 'label",'+'"'  + cat + '"'+  ")'>" + title + "</label><br/>");		
		
	}
	
	function createTagRadioButton(group, title, cat){
			document.write( "<input class='radiotrip' type='radio' name="+"'"+group+"'"
				+" onclick='updateQueryParameter("+'"'  + group + 'label",'+'"'  + cat + '"'+  ")'>" + title + "<br/>");
	}
	
	function createTimeCheckBox(group, title, cat){
			document.write( "<input type='checkbox' name="+"'"+group+"'"
				+" onclick='updateQueryParameter("+'"'  + group + 'label",'+'"'  + cat + '"'+  ")'>" + title + "<br/>");
	}
	
	function show(idest){
			document.getElementById(idest).style.display="block";
	}
	
	function hide(idest){
		document.getElementById(idest).style.display="none";
	}
		
	/**
	* Show/Hide TAB principale
	*/
	var tabmenu = new Array("focus","news","topTrips","writeme");
	function setTab(map){
		var i=0;
		var mapdiv=map;
		for (i=0;i<tabmenu.length ;i++){
			if (tabmenu[i]==map){
				show(tabmenu[i] + "Div"); 
			}else{
				hide(tabmenu[i] + "Div"); 
			}
		}
	}
	/**
	* Show/Hide destination/type/material/season
	*/
	function setMap(map){
		if (map!=""){
			mapdiv=map+"div";
			if (document.getElementById(mapdiv).style.display!="block"){
				show(mapdiv);
			}else{
				hide(mapdiv);	
				// reset Radio buttons
				// reset query search
				document.getElementById(map+"label").innerHTML="";
				// update trips
				showTrips2();
			}
		}
	}

