function setCookie(name,value) { document.cookie=name+"="+escape(value); }
	
function getCookie(name) { 
	var nameEQ = name + "="; 
	var ca = document.cookie.split(';'); 
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return (c.substring(nameEQ.length,c.length)).replace(/%20/g,' ');
	}
	return null;
}
function deleteCookie(name) { setCookie(name,"",-1); }
function debugCookie(name) { alert(getCookie(name)); }

function getCookieTokens(name) {
	var str = getCookie(name);
	var tokens = new Array();
	if (str) {
		
		var spoint = 0;
		for (i=0; i<str.length; i++) {
			if (str.charAt(i)=='*' && str.substr(i,4)=="****") {
				tokens.push(str.substring(spoint,i));
				i=i+3;
				spoint=i+1;
			}
		}
		if (spoint < str.length-1) {
			tokens.push(str.substring(spoint,str.length-1));
		}
		
	}
	return tokens;
}


function getCookieTokenIndex(cname, tname) {
	var tokens = getCookieTokens(cname);
	
	for (i=0; i<tokens.length; i++) {
		if (tokens[i] == tname) return i;
	}
	return -1;
	
}

function getCookieTokenAt(cname, index) {
	var tokens = getCookieTokens(cname);
	
	return tokens[index];
}

function addToken(cname, value) {
	var str = hexConvert(getCookie(cname));
	if (!str)	str='';
	setCookie(cname, str+value+"****");
}
function getUserIndex(userid) {
	for (var i=0; i<getCookie(users).length; i++) {
		if (hexConvert(getCookie(users))==userid) return i;
	}
	return -1;
}

function usePersonalSettings() {
	if (getCookie("settings") && getCookie("settings")=="true") {
		return true;
	}
	return false;
}

function setUsePersonalSettings(state) {
	setCookie("settings", state);
}
function hexConvert(str) {
	if (str) {
		str = str.replace(/%20/g,' ');
		str = str.replace(/%23/g,'#');
		str = str.replace(/%25/g,'%');
		str = str.replace(/%26/g,'&');
		str = str.replace(/%27/g,"'");
		str = str.replace(/%22/g,'"');
		str = str.replace(/%3F/g,'?');
		str = str.replace(/%3D/g,'=');
		str = str.replace(/%2C/g,',');
		str = str.replace(/%0A/g,'\n');
		str = str.replace(/%28/g,'(');
		str = str.replace(/%29/g,')');
		str = str.replace(/%24/g,'$');
	}
	return str;
}
