/**
 * read the cookie specified by name
 */
function readCookie (name) {
      var namearg = name + "=";
      var nlen = namearg.length;
      var clen = document.cookie.length;
      var i = 0;
      while (i < clen) {
        var j = i + nlen;
        if (document.cookie.substring(i, j) == namearg) {
           var endpos = document.cookie.indexOf (";", j);
           if (endpos == -1) endpos = document.cookie.length;
           return unescape(document.cookie.substring(j, endpos));
	  }
        i = document.cookie.indexOf(" ", i) + 1;
        if (i == 0) break;
      }
      return -1;
    }


/**
 * delete the cookie specified by name with the given value
 */
function writeCookie (name, value, expire) {
      var expdate=new Date();
     // expire cookie in 10 years by default
      expdate.setTime(expdate.getTime()+expire);
      document.cookie = name + "=" + escape (value) + "; expires=" + expdate.toGMTString();
    }


/**
 * delete the cookie specified by name
 */
function deleteCookie (name) {
     var expdate = new Date();
     expdate.setTime (expdate.getTime() - 1);  // Already gone!
     var cval = readCookie (name);
     document.cookie = name + "=" + cval + "; expires=" + expdate.toGMTString();
   }
