var xmlHttp;
var xmlHttp2;
var xmlHttp3;

//*********************************************
//normale Suche
//********************************************

function showHint(str) {
	if (str.length==0)  { 
	  document.getElementById("txtHint").innerHTML=" This search will not have any results";
	  return;
    }
	xmlHttp=GetXmlHttpObject()
	var ext_url = "";
	if(document.search_form.qx[1].checked == true)ext_url = "&qx=user";
	if(document.search_form.qx[2].checked == true)ext_url = "&qx=spot";
	var url="/xsearch_suggestion.php";
	url=url+"?q="+str+ext_url;
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
} 

function stateChanged() { 
	if (xmlHttp.readyState==4) { 
		if (xmlHttp.responseText==""){
			document.getElementById("txtHint").innerHTML="This search will not have any result";
		}else{
			if (xmlHttp.status==200){
        document.getElementById("txtHint").innerHTML=xmlHttp.responseText;
      } else {
        document.getElementById("txtHint").innerHTML="Could not connect to server. Please try again later.";
      }
		}
	}
}

//*********************************************
//erweiterte Suche
//********************************************

//user
function ResetCountry(){
  document.getElementById("xsearch_countryselect").selectedIndex='0';
}

function XSearchShowHintUser(str) {  
  document.getElementById("txtUserHint").innerHTML="Looking for users, please wait...";
	xmlHttp3=GetXmlHttpObject()
	var ext_url = "";
	ext_url = "&qx=user";
	var url="/xsearch_suggestion.php";
	url=url+"?q="+str+ext_url;
	url=url+"&sid="+Math.random();
  xmlHttp3.onreadystatechange=XSearchShowHint_stateChanged_user;
	xmlHttp3.open("GET",url,true);
	xmlHttp3.send(null);
	XSearchShowHint();
} 

function XSearchShowHint_stateChanged_user() { 
	if (xmlHttp3.readyState==4) { 
		if (xmlHttp3.responseText==""){
			document.getElementById("txtUserHint").innerHTML="No user found";
		}else{
			if (xmlHttp3.status==200){
        document.getElementById("txtUserHint").innerHTML=xmlHttp3.responseText;
      } else {
        document.getElementById("txtUserHint").innerHTML="Could not connect to server. Please try again later.";
      }
		}
	}
}

// country

function XSearchSetTarget(str) {
    document.getElementById("xsearch_span_cityselect").innerHTML="<select id='xsearch_cityselect'><option value=''>Looking up spots, please wait ...</select>";
    xmlHttp2=GetXmlHttpObject();
	  var url="/xsearch_getcities.php";
	  url=url+"?curl="+str;
	  url=url+"&sid="+Math.random();
	  xmlHttp2.onreadystatechange=XSearchSetTarget_stateChanged;
	  xmlHttp2.open("GET",url,true);
	  xmlHttp2.send(null);     
    XSearchShowHint();
} 


function XSearchSetTarget_stateChanged() { 
	if (xmlHttp2.readyState==4) { 
		if (xmlHttp2.responseText==""){
			document.getElementById("xsearch_span_cityselect").innerHTML="<select id='xsearch_cityselect'><option value=''>To select a specific spot you have to select a country.</select>";
			//
		}else{
			if (xmlHttp2.status==200){
        document.getElementById("xsearch_span_cityselect").innerHTML=xmlHttp2.responseText;
      } else {
        document.getElementById("xsearch_span_cityselect").innerHTML="Could not connect to server. Please try again later.";
      }
			//XSearchShowHint();
		}
	}
}

// hint

function XSearchShowHint() {
	document.getElementById("txtHint").innerHTML="Searching for estimated results, please wait...";
	xmlHttp=GetXmlHttpObject()
	var ext_url = "";
	var cat_url = "";
	var found_cats = 0;
  //if(pos=="user")ext_url = "&qx=user";
	var url="/xsearch_suggestion.php";
	url=url+"?sid="+Math.random()+ext_url;
  url=url+"&q="+document.getElementById("xsearch_searchfield").value;
	url=url+"&qy="+document.getElementById("xsearch_yearselect").value;
	url=url+"&qm="+document.getElementById("xsearch_monthselect").value;
	url=url+"&qu="+document.getElementById("xsearch_user_searchfield").value;
  url=url+"&qc="+document.getElementById("xsearch_cityselect").value;
	url=url+"&qco="+document.getElementById("xsearch_countryselect").value;
	for (var i = 1; i <= 10; i++){
    if(document.getElementById("xsearch_cat"+i).checked){
      if(found_cats>0){
        cat_url=cat_url+'&category'+found_cats+'='+i;
      }else{
        cat_url=cat_url+'&category='+i;
      }
      found_cats=found_cats+1;
    }  
  }
  if(found_cats<10)url=url+cat_url;
  //alert(url);
  xmlHttp.onreadystatechange=XSearchShowHint_stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
} 

function XSearchShowHint_stateChanged() { 
	if (xmlHttp.readyState==4) { 
		if (xmlHttp.responseText==""){
			document.getElementById("txtHint").innerHTML="This search will not have any result";
		}else{
			if (xmlHttp.status==200){
        document.getElementById("txtHint").innerHTML=xmlHttp.responseText;
      } else {
        document.getElementById("txtHint").innerHTML="Could not connect to server. Please try again later.";
      }
		}
	}
}


// submit

function XSearchSubmit() {
  var submit_url="";
  var cat_url="";
  var found_cats=0;
  
  if(document.getElementById("xsearch_countryselect").value==""){
    //ACHTUNG TEMPORÄR!!!!
   submit_url="http://www.mygreatworld.com";
   //submit_url="http://www.investigations-worldwide.com";
  }else{
    //ACHTUNG TEMPORÄR!!!!
    submit_url="http://"+document.getElementById("xsearch_countryselect").value;
    //submit_url="http://www.investigations-worldwide.de";
  }
  
  submit_url=submit_url+"/";
  if(document.getElementById("xsearch_cityselect").value!="")submit_url=submit_url+document.getElementById("xsearch_cityselect").value;
  if(document.getElementById("xsearch_yearselect").value!="")submit_url=submit_url+'Year~'+document.getElementById("xsearch_yearselect").value+'/';
  if(document.getElementById("xsearch_monthselect").value!="")submit_url=submit_url+'Month~'+document.getElementById("xsearch_monthselect").value+'/';
  if(document.getElementById("xsearch_searchfield").value!="")submit_url=submit_url+'Search/'+document.getElementById("xsearch_searchfield").value+'/';
  if(document.getElementById("xsearch_user_searchfield").value!="")submit_url=submit_url+'UserSearch/'+document.getElementById("xsearch_user_searchfield").value.replace(/[\. ]/g,"_").replace(/[\']/g,"+")+'/';
  
  for (var i = 1; i <= 10; i++){
    if(document.getElementById("xsearch_cat"+i).checked){
      if(found_cats>0){
        cat_url=cat_url+'PhotoCategory'+found_cats+'~'+i+'/';
      }else{
        cat_url=cat_url+'PhotoCategory~'+i+'/';
      }
      found_cats=found_cats+1;
    }  
  }
  if(found_cats<10)submit_url=submit_url+cat_url;
  
 // alert("You will be pushed to: "+submit_url);
  window.location.href=submit_url;
}


function XSearchSubmitLink(url) {
  var submit_url="";
  var cat_url="";
  var found_cats=0;
  //ACHTUNG TEMPORÄR!!!!
  submit_url=url;
  //submit_url="http://www.investigations-worldwide.de";
  ////////////////////////
  
  submit_url=submit_url+"/";
  if(document.getElementById("xsearch_cityselect").value!="")submit_url=submit_url+document.getElementById("xsearch_cityselect").value.replace(/[\. ]/g,"_").replace(/[\']/g,"+")+'/';
  if(document.getElementById("xsearch_yearselect").value!="")submit_url=submit_url+'Year~'+document.getElementById("xsearch_yearselect").value+'/';
  if(document.getElementById("xsearch_monthselect").value!="")submit_url=submit_url+'Month~'+document.getElementById("xsearch_monthselect").value+'/';
  if(document.getElementById("xsearch_searchfield").value!="")submit_url=submit_url+'Search/'+document.getElementById("xsearch_searchfield").value.replace(/[\. ]/g,"_").replace(/[\']/g,"+")+'/';
  if(document.getElementById("xsearch_user_searchfield").value!="")submit_url=submit_url+'UserSearch/'+document.getElementById("xsearch_user_searchfield").value.replace(/[\. ]/g,"_").replace(/[\']/g,"+")+'/';
  
  for (var i = 1; i <= 10; i++){
    if(document.getElementById("xsearch_cat"+i).checked){
      if(found_cats>0){
        cat_url=cat_url+'PhotoCategory'+found_cats+'~'+i+'/';
      }else{
        cat_url=cat_url+'PhotoCategory~'+i+'/';
      }
      found_cats=found_cats+1;
    }  
  }
  if(found_cats<10)submit_url=submit_url+cat_url;
  
 // alert("You will be pushed to: "+submit_url);
  window.location.href=submit_url;
}

//*********************************************
//diverse Funktionen
//********************************************

function GetXmlHttpObject() {
	var xmlHttp=null;
	try  {
	  // Firefox, Opera 8.0+, Safari
	  xmlHttp=new XMLHttpRequest();
	  }
	catch (e)  {
	  // Internet Explorer
		  try    {
	   		 xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
	      }
    	  catch (e)    {
		    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    	 }
 	}
	return xmlHttp;
}

function countView(str1,str2) {
	xmlHttp=GetXmlHttpObject()
	var url="/counter.php";
	url=url+"?verz="+str1;
	url=url+"&pid="+str2;
	url=url+"&sid="+Math.random();
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
} 


function setnewvalue(str){
  document.getElementById("xsearch_user_searchfield").value=str;
  document.getElementById("txtUserHint").innerHTML="Choosen user: "+str;
  XSearchShowHint();
}    
