// Cookies.js

function getCookie(name) {
	return getCookieFrom(name,document);
}

function setCookie(name,value,days) {
	setCookieTo(name,value,days,document);
}

function getCookieFrom(name,doc) {
	if (DEBUG_ALERTS) {
		alert('Get Cookie: "'+doc.cookie+'"');
	}
	if (doc == null || doc.cookie == null || typeof(doc.cookie) != "string") {
		return "";
	}
	var arrCookies=doc.cookie.split("; ");
	for (var i=0 ; i < arrCookies.length ; i++) {
		var nameval=arrCookies[i].split(";")[0].split("=");
		if (nameval[0] == name) {
			return unescape(nameval[1]);
		}
	}
	return "";
}

function ORIGINAL_setCookieTo(name,value,days,doc) {
	var arrCookies;
	if (doc.cookie == "") {
		arrCookies=new Array();
	}
	else {
		arrCookies=doc.cookie.split("; ");
	}
	var found=false;
	for (var i=0 ; i < arrCookies.length ; i++) {
		var nameval=arrCookies[i].split(";")[0].split("=");
		if (nameval[0] == name) {
			arrCookies[i]=composeCookie(name,value,days);
			found=true;
			break;
		}
	}
	if (!found) {
		arrCookies[arrCookies.length]=composeCookie(name,value,days);
	}
	if (DEBUG_ALERTS) {
		alert('Cookie assignment: "'+arrCookies.join("; ")+'"');
	}
	doc.cookie=arrCookies.join("; ");
}

function setCookieTo(name,value,days,doc) {	if (DEBUG_ALERTS) {
		alert('SetCookie("'+name+'","'+value+'",'+days+')');
	}
	var newcookie=composeCookie(name,value,days);
	if (DEBUG_ALERTS) {
		alert('Cookie assignment: "'+newcookie+'"');
	}
	doc.cookie=newcookie;
	if (DEBUG_ALERTS) {
		alert('Cookie readback: "'+doc.cookie+'"');
	}
}

function composeCookie(name,value,days,doc) {
	return name+"="+escape(value)+";expires="
		+(new Date((new Date()).getTime()+days*24*60*60*1000)).toGMTString();
}

