function setCookie(name, value, expires, path, domain, secure) {
	document.cookie = name + "=" + value +
		(expires ? "; expires=" + expires.toGMTString() : "") +
		(path ? "; path=" + path : "") +
		(domain ? "; domain=" + domain : "") +
		(secure ? "; secure" : "");
}

function getCookie(name) {
	var prefix = name + "=";

	var cookieStartIndex = document.cookie.indexOf(prefix);

	if (cookieStartIndex == -1)
		return "";

	var cookieEndIndex = document.cookie.indexOf(";", cookieStartIndex + prefix.length);

	if (cookieEndIndex == -1)
		cookieEndIndex = document.cookie.length;

	return unescape(document.cookie.substring(cookieStartIndex + prefix.length, cookieEndIndex));
}

function deleteCookie(name, path, domain) {
	if (getCookie(name)) {
		document.cookie = name + "=" +
			"; expires=Thu, 01-Jan-70 00:00:01 GMT" +
			(path ? "; path=" + path : "") +
			(domain ? "; domain=" + domain : "");
	}
}

function fixDate(date) {
	var skew = new Date(0).getTime();

	if (skew > 0)
		date.setTime(date.getTime() - skew);
}
