// JavaScript Document


//TOPICS

function loadFavorits(){
	if (category ==1) {alert1("Sólo los usuarios registrados disponen de FAVORITOS. Regístrate!!!")}
	else{
		searchContent = "MIS FAVORITOS";
		searchResults();	
		var url = "./rpc/server.php?request=getTopics&userId="+userId+ "&ms=" + new Date().getTime();
		XmlHttpRequestCall(url,0,processTopics,"main");
	}
}

function loadTopic(topicId){
	var url = "./rpc/server.php?request=getTopic&topicId="+topicId+ "&ms=" + new Date().getTime();
	//alert(url);
	XmlHttpRequestCall(url,0,processTopic,"main");
}
/*
function updateTopicPosition(topicId,left,top,width,height){
	var url = "./rpc/server.php?request=updateTopicPosition&userId="+userId+"&topicId="+topicId+"&left="+left+"&top="+top+"&width="+width+"&height="+height;
	XmlHttpRequestCall(url ,0,processTopic,"main");
}
*/
function addTopic(topicTitle,topicTags,catego){
	if (topicTitle == ""){
		alert("El Ranking debe tener un TITULO!!!")
		return;
	}
	if(catego == "-"){ 
		alert ("Debes escoger una CATEGORIA para el Ranking!!")
		return;
	}
	if(topicTags == ""){ 
		alert1 ("No has puesto ninguna palabra clave! Seguro que tu ranking tiene relación con algún tema!!")
		return;
	}
	//alert (catego);
	var absolut = 0;
	if (category == 3){ absolut = 1;}
	var respuesta = confirm("Deseas crear el ranking: "+topicTitle+" con las palabras clave: "+topicTags+"?");
	if (respuesta){
		processRemoveTopic(0);
		var encodedTitle= Utf8.encode(topicTitle);
		var encodedTags= Utf8.encode(topicTags);
		//alert ("absolut = "+absolut)
		var url = "./rpc/server.php?request=addTopic&userId="+userId+"&topicTitle="+encodedTitle+"&topicTags="+encodedTags+"&absolut="+absolut+"&catego="+catego+"&browser="+BrowserDetect.browser+ "&ms=" + new Date().getTime();
		XmlHttpRequestCall(url,0,processTopic,"main");
	}else{processRemoveTopic(0);}
	
}

function removeTopic(topicId,topicTitle){
	var respuesta = confirm("Estás seguro de querer borrar el ranking: "+topicTitle+"?");
	if (respuesta){
		var url = "./rpc/server.php?request=removeTopic&userId="+userId+"&topicId="+topicId;
		XmlHttpRequestCall(url,0,processRemoveTopicDef,topicId);
	}//else{return;}
}

function checkTopic(topicId){	//funcio que comprova quins son els titols seleccionats
	var url = "./rpc/server.php?request=checkTopic&userId="+userId+"&topicId="+topicId+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processTopic,"main");
}

function checkFavorit(topicId){	
	var url = "./rpc/server.php?request=checkFavorit&userId="+userId+"&topicId="+topicId+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processFavorit,topicId);
}

function getFavorit(topicId){	
	var url = "./rpc/server.php?request=getFavorit&userId="+userId+"&topicId="+topicId+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processFavorit,topicId);
}

function clearTopics(){	
	clearfold();
	searchContent = "";
	searchResults();
	var url = "./rpc/server.php?request=clearTopics&userId="+userId;
	XmlHttpRequestCall(url,0,processClearTopics,"main");
}

function getRelated(topicId){	
	var url = "./rpc/server.php?request=getRelated&topicId="+topicId+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processRelated,topicId);
}
//ITEMS

function loadItems(topic){
	var url = "./rpc/server.php?request=getItems&topicId="+topic.id+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processItems,topic);
}

function increaseItemValue(topic,itemId){
	currentItem = itemId;
	//alert(" itemId="+currentItem);
	
	var url = "./rpc/server.php?request=increaseItem&userId="+userId+"&topicId="+topic.id+"&itemId="+itemId+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processItems,topic);
}
/*
function decreaseItemValue(topic,itemId){
	var url = "./rpc/server.php?request=decreaseItem&userId="+userId+"&topicId="+topic.id+"&itemId="+itemId;
	XmlHttpRequestCall(url,0,processItems,topic);
}
*/
function addItem(topic, itemTitle, itemComment){
	//alert("¿Quieres añadir este "+itemTitle+" en el ranking "+topicId+"?");
	if (category == 1) {alert ("Sólo los usuarios registrados pueden añadir un item. Regístrate!!!");}
	if (itemTitle == ""){
		alert ("No has introducido el TITULO de este Item!!")
		return;		
	}
	//if (BrowserDetect.browser == "Firefox"){}
	processRemoveLastTopicItem(topic.id);
	var encodedTitle= Utf8.encode(itemTitle);
	var encodedComment= Utf8.encode(itemComment);
	//alert ("topicId="+topic.id+"&itemTitle="+encodedTitle+"&itemComment="+encodedComment+"&userId="+userId)
	var url = "./rpc/server.php?request=addItem&topicId="+topic.id+"&itemTitle="+encodedTitle+"&itemComment="+encodedComment+"&userId="+userId+"&browser="+BrowserDetect.browser;
	XmlHttpRequestCall(url,0,processItems,topic);
}

function getCounter(topicId){
	var url = "./rpc/server.php?request=getCounter&userId="+userId+"&topicId="+topicId+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processCounter,topicId);
}

//TITLES

function loadTitles(){
	var url = "./rpc/server.php?request=getTitles";
	XmlHttpRequestCall(url,0,processTitles,"top");
}

function loadLastTitles(){
	searchContent = "LOS MAS RECIENTES";
	searchResults();
	var url = "./rpc/server.php?request=getLastTitles&userId="+userId+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processTopics,"main");
}

function loadTopTitles(){
	searchContent = "LOS MAS VISTOS";
	searchResults();
	var url = "./rpc/server.php?request=getTopTitles&userId="+userId+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processTopics,"main");
}

function loadTags(){
	searchContent = "";
	searchResults();
	var url = "./rpc/server.php?request=getTags"+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processTags,"top");
}

function loadTopTags(){
	TagCategory = "TAGS";
	CatTagTitle();
	
	var url = "./rpc/server.php?request=getTopTags"+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processTopTags,"tags_content");
}

function loadCategories(){
	var url = "./rpc/server.php?request=getCategories"+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processCategories,"category_content");
}

//SEARCH

function getTagsXTopic(topicId){
	var url = "./rpc/server.php?request=searchTagsXTopic&topicId="+topicId+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processTagsXTopic,topicId);
}

function getCatsXTopic(topicId){
	//alert ("getting cats")
	var url = "./rpc/server.php?request=searchCatsXTopic&topicId="+topicId+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processCatsXTopic,topicId);
}

function searchTopic(){
	if (searchContent == ""){alert ("Debes introducir el texto que quieres buscar"); return null;}
	fold ("top");
	//searchResults();
	var url = "./rpc/server.php?request=search&searchContent="+searchContent+"&userId="+userId+"&browser="+BrowserDetect.browser+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processTopics,"main");
}

function searchResults(){
	var result = $("results");
	if(result){
		var ti = result.childNodes;
		if (ti.length >= 1){
			result.removeChild(ti.item(0));
		}
		if(searchContent != ""){
			result.appendChild(document.createTextNode(Utf8.decode(searchContent)));
		}
		if (searchContent == "Madagascar"){loadTitles();}
	}else{alert ("no existe results")}
}

function CatTagTitle(){
	var result = $("tag_title");
	//IE revision!!!
	
	if(result){ 
		var ti = result.childNodes;
		if (ti.length >= 1){
			result.removeChild(ti.item(0));
		}
		if(TagCategory != ""){
			result.appendChild(document.createTextNode(TagCategory));
		}
	}else{alert ("no existe results")}
}

function searchTag(Tag){
	actualHop = 1;
	searchContent = Tag.subject;
	fold ("top");
	searchResults();
	var url = "./rpc/server.php?request=searchTag&TagId="+Tag.id+"&userId="+userId+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processTopics,"main");
}

function searchCat(Cat){
	actualHop = 1;
	searchContent = Cat.subject;
	TagCategory = "TAGS ("+Utf8.decode(Cat.subject)+")";
	CatTagTitle();
	searchCatTags(Cat);
	var url = "./rpc/server.php?request=searchCat&CatId="+Cat.id+"&userId="+userId+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processTopics,"main");
}

function searchCatTags(Cat){
	//alert (Cat.subject)
	var url = "./rpc/server.php?request=searchCatTags&CatId="+Cat.id+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processTagsXCat,"tags_content");
}

function randomSearch(){
	var url = "./rpc/server.php?request=randsearch&userId="+userId+ "&ms=" + new Date().getTime();
	//alert(url);
	XmlHttpRequestCall(url,0,processTopic,"main");
}

//COMMENTS

function addComment(itemId,topicId,content){
	//alert("¿Quieres añadir este "+itemTitle+" en el ranking "+topicId+"?");
	if (category == 1) {alert ("Sólo los usuarios registrados pueden añadir un comentario. Regístrate!!!");}
	if (content == ""){
		alert ("No has introducido el contenido de este comentario!!")
		return;		
	}
	processRemoveLastTopicItem(topicId); 
	var encodedContent= Utf8.encode(content);
	var url = "./rpc/server.php?request=addComment&itemId="+itemId+"&topicId="+topicId+"&coment="+encodedContent+"&userId="+userId+"&browser="+BrowserDetect.browser;
	XmlHttpRequestCall(url,0,processComments,topicId);
}

function loadComments(itemId,topicId){
	var url = "./rpc/server.php?request=getLastComments&itemId="+itemId+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processComments,topicId);
}

function commentsNum(topicId){
	var url = "./rpc/server.php?request=getCommentsNum&topicId="+topicId+ "&ms=" + new Date().getTime();
	XmlHttpRequestCall(url,0,processCommentsCounter,topicId);
}
