// read/write cookies

function readCookie(key) {
	//Set skips to 0 if param omitted
	//if (skips == null)
		var skips = 0;

	//Parse cookie string
	var cookieString = "" + document.cookie;
	var cookieArray = cookieString.split("; ");

	//Scan for desired cookie
	for (var i = 0; i < cookieArray.length; i++) {
		var singleCookie = cookieArray[i].split ("=");
		if (singleCookie.length != 2)
			continue;
		var name = unescape(singleCookie[0]);
		var value = unescape(singleCookie[1]);

		//Return cookie if found
		if (key == name && skips-- == 0) {
			return value;
		}
	}
	//Cookie not found
	return null;
}


function bakeCookie(name, value, path) {

	//Build expiration date string
	var expireDate = new Date();
	expireDate.setYear (expireDate.getYear() + 1);
	expireDate = expireDate.toGMTString();

	//Build set-cookie string
	var cookieString = escape(name) + "=" + escape(value) + "; expires=" + expireDate;
	if (path != null)
		cookieString += "; path=" + path;

	//Create/update cookie
	document.cookie = cookieString;

}
