// code that verifies the user can use cookies:
	function checkBrowser() 
	{
		var oreo = new Cookie(document, "browsercheck");
		oreo.remove();
		oreo.favorite = "doublestuff";
		oreo.store();
		oreo.favorite = null;
	
// now, let's try retrieving the cookie
		if(!oreo.load() || !oreo.favorite || oreo.favorite!="doublestuff") 
		{ 
            location="/base/error.asp"		} 
			oreo.remove();
	} // checkCookie
	
	function Cookie(document, name, hours, path, domain, secure) {
// We use '$' to distinguish from actual properties.  Just bear with me.
   this.$document = document;
   this.$name = name;
   if(hours)
      this.$expiration = new Date((new Date()).getTime()+hours*3600000);
   else this.$expiration = null;
   if(path) this.$path = path; else this.$path = null;
   if(domain) this.$domain = domain; else this.$domain = null;
   if(secure) this.$secure = true; else this.$secure = false;

   this.store  = _Cookie_store;
   this.load   = _Cookie_load;
   this.remove = _Cookie_remove;
} // Cookie initializer

function _Cookie_store() {
   var cookieval = "";
   for(var prop in this) {
      if((prop.charAt(0) == '$') || ((typeof this[prop]) == 'function'))
         continue;
      if(cookieval != "") cookieval += '&';
      cookieval += prop + ':' + escape(this[prop]);
   }

   var cookie = this.$name + '=' + cookieval;
   if(this.$expiration)
      cookie += '; expires=' + this.$expiration.toGMTString();
   if(this.$path) cookie += '; path=' + this.$path;
   if(this.$domain) cookie += '; domain=' + this.$domain;
   if(this.$secure) cookie += '; secure';

   this.$document.cookie = cookie
} // store() function of Cookie class

function _Cookie_load() {
   var allcookies = this.$document.cookie;
   if(allcookies=="") return(false);

   var start = allcookies.indexOf(this.$name + '=');
   if(start==-1) return(false); // undefined
   start += this.$name.length + 1;
   var end = allcookies.indexOf(';',start);
   if(end<0) end = allcookies.length;
   var cookieval = allcookies.substring(start, end);

   var a = cookieval.split('&');
   for(var i=0; i<a.length; i++)
      a[i]=a[i].split(':');

   for(var i=0; i<a.length; i++)
      this[a[i][0]] = unescape(a[i][1]);

   return(true);
} // load() function of Cookie class

function _Cookie_remove() {
   var cookie = this.$name + '=';
   if(this.$path) cookie += '; path='+this.$path;
   if(this.$domain) cookie += '; domain='+this.$domain;
   cookie += '; expires Fri, 02-Jan-1970 00:00:00 GMT';

   this.$document.cookie = cookie;
} // remove() function of Cookie class
