function getDomain() { // extracts the pages domain
myregexp = new RegExp("(http|https)://([^/]*)/");
var m=myregexp.exec(location.href);
if (m==null) return null;
var first=m[2].indexOf('.');
if (first==m[2].lastIndexOf('.')) return m[2];
else return m[2].substring(first+1,m[2].length);
}

function getCookieValue (offset) {
var endstr=document.cookie.indexOf (";", offset);
if (endstr==-1) endstr=document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}

function goURL(aURL) {
window.location.replace(aURL);
}

	function getCookie(name) {
	var arg=name+"=";
	var alen=arg.length;
	var clen=document.cookie.length;
	var i=0;
		while (i<clen) {
		if (document.cookie.substring(i,i+alen)==arg) return getCookieValue(i+alen);
		i=document.cookie.indexOf(" ",i)+1;
			if (i==0) break;
			}
			return null;
			}

function setSessionCookie (name, value) {
var dc=name+"="+escape(value)
dc+=";path=/;domain=."+getDomain();
document.cookie=dc;
}

function SetCookie(cookieName,cookieValue,nHours) {
 var today = new Date();
 var expire = new Date();
 var path = "/";
 expire.setTime(today.getTime() + 3600000*nHours);
document.cookie = cookieName+"="+escape(cookieValue)
 				 + ";path="+path
 				 + ";expires="+expire.toGMTString();
                 }