//ajax functions

var xmlHttp

function new_comment(){
	
	var frm=document.review_form;

	ReqObj=GetXmlHttpObject(); //request object
	
	if(ReqObj==null){
  		alert ("Sorry your browser does not support our comments");
  		return;
  	}
	
	
	if(frm.uid){
		
		var poststr="name="+escape(encodeURI(frm.name.value))+"&email="+escape(encodeURI(frm.email.value))+"&uid="+escape(encodeURI(frm.uid.value))+"&review="+escape(encodeURI(frm.review.value))+"&ajax=yes";
	
	}else{
	
		var poststr="name="+escape(encodeURI(frm.name.value))+"&email="+escape(encodeURI(frm.email.value))+"&review="+escape(encodeURI(frm.review.value))+"&ajax=yes";
	
	}
	

	//var poststr="name="+escape(encodeURI(frm.name.value))+"&email="+escape(encodeURI(frm.email.value))+"&review="+escape(encodeURI(frm.review.value))+"&ajax=yes";

	ReqObj.onreadystatechange=function(){
		if(ReqObj.readyState==4){
			
			//clear ajmsg box ready for new msg
			var mydiv = document.getElementById("ajmsg"); //msg did not work maybe js keyword?
			while(mydiv.firstChild){mydiv.removeChild(mydiv.firstChild);}
			
			if(ReqObj.responseText=="ok"){
				
				document.review_form.Add.disabled = true; //disable submit button
				
				//custom ok msg
				var newdiv = document.createElement("div"); 
				newdiv.innerHTML = "Thankyou, your comment will be first checked before being added.";
				mydiv.appendChild(newdiv);
			
			}else{ //all other error msgs
				
				var newdiv = document.createElement("div"); 
				newdiv.innerHTML = ReqObj.responseText;
				mydiv.appendChild(newdiv);	
			}
		}
	}
	
	ReqObj.open("POST","/restaurants/scripts/comment.php",true); 
	ReqObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8"); //needed for post
	ReqObj.send(poststr);
}










function new_rating(str,rtg){ //phasing out str (rest id)
	
	if(rtg==0){ alert("Please select your rating first!");
		return;
	}

	
	xmlHttp=GetXmlHttpObject();
	if(xmlHttp==null){
  		alert ("Sorry your browser does not support our ratings!"); //ajax?
  		return;
  	}

	//alert("srt:"+str+"\nrtg:"+rtg);
	//dont use &amp; in this url below

	//var url="scripts/add_vote_2.php?rid="+str+"&rating="+rtg; //called script
	var url="scripts/add_vote_3.php?rating="+rtg; //new without rid
	//url=url+"&sid="+Math.random(); ?not sure what this is
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}


function stateChanged(){ 
	if(xmlHttp.readyState==4){ 
		//innerhtml is non standard and might be causing the image errors!
		//document.getElementById("txtHint").innerHTML=xmlHttp.responseText; //replaces whats inside txtHint div on page!
		
		obj = document.getElementById("stars");
		
		//document.getElementById("txtHint").innerHTML=""; //clear innerHTML is bad!
		
		//better dom
		while(obj.firstChild){
			obj.removeChild(obj.firstChild);
		}
		
		//this works but still no images?
		

		
		//see also http://slayeroffice.com/articles/innerHTML_alternatives/
		
		//instead try dom method aproved by w3c from http://domscripting.com/blog/display/99
		var newdiv = document.createElement("div");
		newdiv.innerHTML = xmlHttp.responseText;
		
		var container = document.getElementById("stars");
		container.appendChild(newdiv);

		//not sure if this take html? only text
	}
}


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;
}


