// JavaScript Document

$(document).ready(function(){
	
	$("#rate_1").hover(function(){setrating(2)},function(){unsetrating()});
	$("#rate_2").hover(function(){setrating(4)},function(){unsetrating()});
	$("#rate_3").hover(function(){setrating(6)},function(){unsetrating()});
	$("#rate_4").hover(function(){setrating(8)},function(){unsetrating()});
	$("#rate_5").hover(function(){setrating(10)},function(){unsetrating()});

	$("#rate_1").click(function(){ storerating(2)});
	$("#rate_2").click(function(){ storerating(4)});
	$("#rate_3").click(function(){ storerating(6)});
	$("#rate_4").click(function(){ storerating(8)});
	$("#rate_5").click(function(){ storerating(10)});

    $("#savecomment").click(savecomment);

	$("input, textarea").focus(
	 function(){
	   this.select();
	 }
	);

}); 

function closeBox(){
	$("#tmpbox").hide();
}

function showBox(title,url){
	$("#tmptitle").html(title);
	$("#tmpurl").val(url.toLowerCase());

	$("#tmpbox").show();
	$("#tmpurl").focus();
}

function addToFavorites(favid){
	$.ajax({
		   type:"GET",
		   url:"/my_addfavorite/"+favid+"/",
		   dataType:"json",
		   success: confirmaddfavorite,
		   error: erroraddfavorite
		   });	
}

function confirmaddfavorite(data){
	alert(data.status);
	if(data.rebuild==1){
		updateFavoriteList(data.favlist);
	}
}

function erroraddfavorite(){
	alert("Het toevoegen van de performer aan uw\n favorieten is niet gelukt!");	
}

function toggleNotification(type,favid,element){
	$.ajax({
		   type:"GET",
		   url:"/my_favorites_updnoti/"+favid+"/"+type+"/"+element+"/",
		   dataType:"json",
		   success: updateFavoriteItem,
		   error: errorUpdateFavorite
		   });	
}

function errorUpdateFavorite(){
	alert("Het wijzigen van uw notificatie is mislukt!");	
}

function updateFavoriteItem(data){
	if(data.status==1){
		if(data.newstatus==0){
			$("#"+data.element).removeClass('on');
			$("#"+data.element).addClass('off');
		}else{
			$("#"+data.element).removeClass('off');
			$("#"+data.element).addClass('on');
		}
	}else{
		alert(data.msg);
	}
}

function deleteFavorite(favid){
	if(confirm("Weet u zeker dat u deze performer uit uw favorieten wilt verwijderen?")){
		$.ajax({
			   type:"GET",
			   url:"/my_favorites_delete/"+favid+"/",
			   dataType:"json",
			   success: confirmaDeleteFavorite,
			   error: erroDeleteFavorite
			   });	
	}
}

function erroDeleteFavorite(XMLHttpRequest, textStatus, errorThrown){
	alert("Het verwijderen van uw favoriet is mislukt!");	
}

function confirmaDeleteFavorite(data){
	alert(data.status);
	updateFavoriteList(data.favlist);
}

function updateFavoriteList(data){
	if(data.status==1){
		var newhtml = "";
		for(var i=0;i<data.list.length;i++){
			newhtml +=buildFavoriteList(data.list[i]);
		}
		$("#myfavlist").html(newhtml);
		$("#myfavmsg").html($("#favmsg").html());
		$("#favcount").html(" ("+data.favcount+")");
	}else{
		$("#myfavlist").html("");
		$("#myfavmsg").html($("#nofav").html());
		$("#favcount").html(" (0)");
	}
}

function buildFavoriteList(data){
	var newline = $("#favdata").html();
	
	newline = newline.replace(/{fw_ID}/g,data.fw_ID);
	newline = newline.replace(/{fw_DID}/g,data.fw_DID);
	newline = newline.replace(/{fw_IMID}/g,data.fw_IMID);
	newline = newline.replace(/{fw_NICKNAME}/g,data.fw_NICKNAME);
	newline = newline.replace(/{fw_STATUS}/g,data.fw_STATUS);
	newline = newline.replace(/{fw_NOTIMAIL}/g,data.fw_NOTIMAIL);
	newline = newline.replace(/{fw_NOTISMS}/g,data.fw_NOTISMS);
	
	return newline;
}

function setrating(e){
	$("#setrating").removeClass("lnr_0");
	$("#setrating").removeClass("lnr_1");
	$("#setrating").removeClass("lnr_2");
	$("#setrating").removeClass("lnr_3");
	$("#setrating").removeClass("lnr_4");
	$("#setrating").removeClass("lnr_5");
	$("#setrating").removeClass("lnr_6");
	$("#setrating").removeClass("lnr_7");
	$("#setrating").removeClass("lnr_8");
	$("#setrating").removeClass("lnr_9");
	$("#setrating").removeClass("lnr_10");
	
	$("#setrating").addClass("lnr_"+e);
}

function unsetrating(){
	setrating(myrating);
}

function storerating(e){
	$.ajax({
		   type:"GET",
		   url:"/my_storerating/"+camid+"/"+e+"/",
		   dataType:"json",
		   success: confirmrating,
		   error: errorrating
		   });	
}

function confirmrating(data){
	alert(data.status);	
	if(data.ratingtxt!=undefined){
		myrating = data.ratingtxt;
		setrating(myrating);
	}
}

function errorrating(){
	alert("Het opslaan van je beoordeling is mislukt!");
}

function savecomment(){
	
	var msg = $("#mycomment").val();
	if(msg!=""){
		$("#savecomment").attr("disabled","disabled");
		$.ajax({
			   type:"GET",
			   url:"/my_storecomment/"+camid+"/?msg="+encodeURIComponent(msg),
			   dataType:"json",
			   success: confirmcomment,
			   error: errorcomment
			   });	
	}else{
		alert("U heeft geen reactie ingevoerd!");
	}
}

function confirmcomment(data){
	$("#mycomment").val("");
	alert(data.status);	
	$("#savecomment").removeAttr("disabled");
}

function errorcomment(){
	alert("Het opslaan van je reactie is mislukt!");
	$("#savecomment").removeAttr("disabled");
}
