savedTags=new Array();
savedValue = '';
//canvia l'estatus d'un tag (clicant a sobre)
function toggleTag(input,tag) {
	//alert(input+tag);
	var ob = document.getElementById('KEY_TAG_'+input);
	var hob = document.getElementById(input);
	var aob = document.getElementById("_TAG_"+tag);

	var tags = getAllTags(input);

	savedTags = tags;
	savedValue = ob.value;
	//afegir tag
	if(isTagged(input,tag)) {
		//treure el tag
		ob.value = '';
		for(var i in tags) {
			if(tags[i]!=tag) {
				if(ob.value!='') ob.value += ' ';
				ob.value += tags[i];
			}
			else {
				aob.style.color='';
			}
		}
	}
	else {
		if(tags.length<7) {
			if(ob.value!='') ob.value += ' ';
			ob.value += tag;
			aob.style.color='#00f';
		}
	}
	//assignem al hidden
	hob.value = ob.value;
	reloadCounterTags(input);
}
//emmagetzema els tags
function checkTags(input) {
	var ob = document.getElementById('KEY_TAG_'+input);

	var tags = getAllTags(input);
	var usertags = getUserTags(input);
	if(tags.length<=7 && usertags.length<=4) {
		savedTags = tags;
		savedValue = ob.value;
		setTimeout("pasteTags('"+input+"')",100);
	}
	else {
		setTimeout("pasteValue('"+input+"')",100);
	}

	reloadCounterTags(input);
}
//no deixa escriure mes tags si s'ha passat el limit
function cleanTags(input) {
	var ob = document.getElementById('KEY_TAG_'+input);
	var hob = document.getElementById(input);

	var tags = getAllTags(input);
	var usertags = getUserTags(input);
	if(ob.value.substr(-1)==' ' && (tags.length>7 || usertags.length>4)) ob.value=ob.value.substr(0,ob.value.length-1);

	//assignem al hidden
	hob.value = ob.value;
	reloadCounterTags(input);
}
//enganxa el valor guardat
function pasteValue(input) {
	var ob = document.getElementById('KEY_TAG_'+input);
	var hob = document.getElementById(input);

	ob.value = savedValue;
	hob.value = ob.value;
	iluminaTags(input);
}
//ilumina els tags emmagetzemats
function pasteTags(input) {
	for(var i in savedTags) {
		try {
			document.getElementById("_TAG_"+savedTags[i]).style.color="";
		}
		catch(e){}
	}
	iluminaTags(input);
}
//ilumina tots els tags que hi hagi a l'input
function iluminaTags(input) {
	var tags = getAllTags(input);
	for(var i in tags) {
		try {
		document.getElementById("_TAG_"+tags[i]).style.color="#00f";
		}
		catch(e){}
	}
}

//retorna si un tag esta a l'input o no
function isTagged(input,tag) {
	var tags = getAllTags(input);
	for(var i in tags) {
		if(tags[i]==tag) return true;
	}
	return false;
}
//retorna un vector amb els tags sense repetir
function getAllTags(input) {
	var ob = document.getElementById('KEY_TAG_'+input);
	var tags = ob.value.split(' ');
	var cleantags = new Array();
	for(var t in tags) {
		cleantags[tags[t]] = 1;
	}
	tags = new Array();
	var i =0;
	for(t in cleantags) {
		tags[i++]=t;
	}
	return tags;
}
//retorna un vector amb els tags d'usuari
function getUserTags(input){
	var tags=getAllTags(input);
	var usertags = new Array();
	var i =0;
	for(var j in tags) {
	    try {
		var txt = document.getElementById("_TAG_"+tags[j]).text;
	    }
	    catch(e){
		usertags[i++] = tags[i];
	    }
	}

	return usertags;
}

//escriu al contador de tags
function reloadCounterTags(input) {
	var ob = document.getElementById("COUNT_TAGS_"+input);
	var tags=getAllTags(input);
	ob.innerHTML = '('+tags.length+'/7)'
}
