
function reportComment(cid,site){
	var param = "cid="+cid+"&site="+site;
	if(confirm("Vill du verkligen anmäla denna?"))doRequest("report-comment",param);
}
/*var selectedSuggestion = -1;
function respondToClick(event) {
  if(((event.keyCode==Event.KEY_UP && selectedSuggestion>=0) || event.keyCode==Event.KEY_DOWN) && $("suggestContainer").visible()){
	var numSuggestions = $$("#suggestContainer div.suggestion").length;
	var suggestions = $("suggestContainer").down(0);
	
	if(selectedSuggestion>=0)suggestions.down(".suggestion",selectedSuggestion).setStyle({backgroundColor: "#FFF"});
	
	if(event.keyCode==Event.KEY_UP)selectedSuggestion--;
	else selectedSuggestion++;
	
	if(selectedSuggestion>=numSuggestions)selectedSuggestion=0;
	else if(selectedSuggestion<0)selectedSuggestion=numSuggestions-1;
	suggestions.down(".suggestion",selectedSuggestion).setStyle({backgroundColor: "#CCC",padding:"2px"});
	
  }else if(event.keyCode==Event.KEY_RETURN && selectedSuggestion>=0){
	var suggestions = $("suggestContainer").down(0);
	var link = ""+suggestions.down("a",selectedSuggestion);
	alert(link);
	link=link.replace(/javascript:/,"");
	
	eval(link);
  }else doRequest('suggest');
}*/
var Message = Class.create({
	initialize: function(xml) {
	  this.xml=xml;
	},
	param: function(type) {
		if(this.xml.getElementsByTagName(type).length>0){
			var str = this.xml.getElementsByTagName(type)[0].childNodes[0].nodeValue;
			str=str.replace(/{/g,"<");
			str=str.replace(/}/g,">")
			str=str.replace(/%26/g,"&")
			return str;
		}
		return null;
	},
	getHtml: function() {
		var html=this.xml.getElementsByTagName("html");
		return html;
	},
	getAllParams: function(type) {
		if(this.xml.getElementsByTagName(type).length>0)return this.xml.getElementsByTagName(type)
		return null;
	}
});
var Engine = Class.create({
	initialize: function() {
	},
	organize: function(message) {
		if(message.param("type")=="suggest"){
			$("suggestContainer").show();
		}else if(message.param("type")=="search"){
			//alert(message.param("pan"));
			eval(message.param("pan"));
			var markers = message.getAllParams("marker");
			
			if(markers.length>0){
				for(var i=0;i<markers.length;i++){
					var h = markers[i].childNodes[0].nodeValue;
					h=h.replace(/{/g,"<");
					h=h.replace(/}/g,">")
					h=h.replace(/%26/g,"&")
					eval(h);
				}
			}
		}else if(message.param("type")=="comment"){
			var redirect =  message.param("redirect");
			if(redirect!=null)eval(redirect);
		}else if(message.param("type")=="report-comment"){
			var effect =  message.param("effect");
			if(effect!=null)eval(effect);
		}
		this.parseHtml(message.getHtml());
	},
	parseHtml: function(html){
		for(var i=0;i<html.length;i++){
			var chunks="";
			for(var j=0;j<html[i].childNodes.length;j++){
				var h = html[i].childNodes[j].nodeValue;
				h=h.replace(/{/g,"<");
				h=h.replace(/}/g,">");
				h=h.replace(/%26/g,"&");
				chunks+=h;
			}
			$(html[i].getAttribute("id")).innerHTML=chunks;				
		}
	}
});
Ajax.Responders.register({
	onCreate: function() {
		$("ajaxLoaderDiv").show();
	},
	onComplete: function() {
		 $("ajaxLoaderDiv").hide();
	}
});

function insertComment(type,params){
	var email = document.getElementById("email_email");
	var filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
	var mess = "";
	if (!filter.test(email.value)) {
		mess="Din epostadress är ofullständig. Redan medlem? I så fall använd epostadressen du registrerade dig med.";
	}else if($("comment_text").getValue().length<35){
		mess="Din recension &auml;r lite f&ouml;r kort. Minst 35 tecken";
	}else if($("comment_rate").getValue()=="0"){
		mess="Vilket betyg ger du? Klicka p&aring; en stjärna.";
	}
	
	if(mess!=""){
		$("ajaxCommentSpace").innerHTML='<div class="registrationError"><p>'+mess+'</p></div>';
		Effect.BlindDown($("ajaxCommentSpace"));
	}else{
		var url="http://www.alltomgrancanaria.com/ajax/server/serverengine.php";
		params=$("ajaxCommentForm").serialize()+"&type="+type+"&"+params;
		$("ajaxCommentSpace").hide();
		new Ajax.Request(url, {
				method: "post",
				onSuccess: function(transport) {
					//alert(transport.responseText);
					var engine = new Engine();
					engine.organize(new Message(transport.responseXML));
					if($("ajaxCommentSpace").innerHTML!="")
						Effect.BlindDown($("ajaxCommentSpace"));
				},
				onFailure: function (request) {
					alert("Nåt fel");
				},
				parameters:params
			});
	}
}

function doRequest(type,params){
	var url="http://dev.alltomgrancanaria.com/ajax/server/serverengine.php";
	var ok=false;
	if((type=="search" || (type=="suggest" && $("qStr").getValue().length>0 && ($("qStr").getValue().length%2)==0))){
		params=$("ajaxSearchForm").serialize()+"&type="+type+"&"+params;
		if(type=="search")map.clearOverlays();
		selectedSuggestion=-1;
		//gMarkers.clear();//Ta bort markers
		//$("markerTypesId").innerHTML="";
		ok=true;
	}else if(type=="report-comment"){
		params="type="+type+"&"+params;
		ok=true;
	}
	
	if(ok){
		new Ajax.Request(url, {
			method: "post",
			onSuccess: function(transport) {
				var engine = new Engine();
				engine.organize(new Message(transport.responseXML));
			},
			onFailure: function (request) {
				alert("Nåt fel");
			},
			parameters:params
		});
	}
}