//------------------------------------------ cookie.js ------------------------------------------
//by bamboo, lindau & szilard



//     * GetCookie(<cookie-name>)
//        - Description: Returns the value of <cookie-name>
//        - Returns: value of <cookie-name>
function GetCookie(name)
{
  var arg = name + "=";
  var alen = arg.length;
  var clen = document.cookie.length;
  var i = 0;
  while (i < clen)
  {
    var offset = i + alen;
    if (document.cookie.substring(i, offset) == arg)
    {
      var endstr = document.cookie.indexOf (";", offset);
      if (endstr == -1) endstr = document.cookie.length;
      return unescape(document.cookie.substring(offset, endstr));
    }
    i = document.cookie.indexOf(" ", i) + 1;
    if (i == 0) break;
  }
  return null;
}




//     * SetCookie(<cookie-name>, <cookie-data>, [expires-date], [path], [domain], [secure])
//        - Description: Stores the cookie <cookie-name> with <cookie-data>.
//        - Returns: nothing
function SetCookie(name, value)
{
  var argv        = SetCookie.arguments;
  var argc        = SetCookie.arguments.length;
  var expires     = (argc > 2) ? argv[2] : null;
  var path        = (argc > 3) ? argv[3] : null;
  var domain      = (argc > 4) ? argv[4] : null;
  var secure      = (argc > 5) ? argv[5] : false;
  document.cookie = name + "=" + escape (value) +
    ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
    ((path == null) ? "" : ("; path=" + path)) +
    ((domain == null) ? "" : ("; domain=" + domain)) +
    ((secure == true) ? "; secure" : "");
}




//     * DeleteCookie(<cookie-name>)
//        - Description: Deletes the cookie <cookie-name>
//        - Returns: nothing
function DeleteCookie(name)
{
  var exp = new Date();
  exp.setTime (exp.getTime() - 1);
  var cval = GetCookie (name);
  document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
