//******************************************************
//Funciones que guardan, borran y recuperan cookies
//******************************************************

function getCookie(name){ 
	var cname = name + "="; 
	var dc = document.cookie; 

	if (dc.length > 0) { 
		begin = dc.indexOf(cname); 
		if (begin != -1) { 
			begin += cname.length; 
			end = dc.indexOf(";", begin); 
			if (end == -1) end = dc.length; 
			return unescape(dc.substring(begin, end)); 
		} 
	} 
	return null; 
} 

function setCookie (name, value, expires) {
	//Si no trae la fecha de caducidad lo caducamos en un ano
	if (!expires){
		expires = new Date();
		expires.setDate(expires.getDate() + 365);
	}
	var strCookie = name + "=" + escape (value) + ";path=/; expires=" + expires.toGMTString();
	document.cookie = strCookie;
}

function delCookie (name) {
	var expireNow = new Date();
	document.cookie = name + "=" + "; expires=Thu, 01-Jan-70 00:00:01 GMT" +  "; path=/";
}

function addToCookie(_cookie, _value){		
	if (!existInCookie(_cookie,_value)){
		var cook = getCookie(_cookie);		
		if (cook != null && cook.length > 0) cook += "#";				
		else cook = "";
		cook += _value;		
		setCookie(_cookie, cook);	
	}
}

function removeFromCookie(_cookie, _value){	
	var cook = getCookie(_cookie);		
	if (cook!=null){
		var newvalue = "";
		var tokens = cook.split("#");
		for (var i=0; i< tokens.length;i++){
			if (tokens[i] != _value){
				if (newvalue.length > 0) newvalue += "#";
				newvalue += tokens[i];
			}				
		}
		setCookie(_cookie, newvalue);
	}
}

function existInCookie(_cookie, _value){
	var cook = getCookie(_cookie);	
	if (cook!=null && cook.length > 0){
		var tokens = cook.split("#");		
		for (var i=0; i< tokens.length;i++)
			if (tokens[i] == _value) return true;			
	}	
	return false;
}
