function SetCookie(name, value)
{
  document.cookie = name + "=" + escape(value);
}

function SetCookieEx(name, value, expires, path, domain, secure)
{
  document.cookie = name + "=" + escape(value)
                  + (expires ? "; expires=" + expires.toGMTString() : "")
                  + (path ? "; path=" + path : "")
                  + (domain ? "; domain=" + domain : "")
                  + (secure ? "; secure" : "");
}

function GetCookie(name)
{
  var begin = document.cookie.indexOf(name + "=");

  if (begin == -1)
  {
    return null;
  }

  var end = document.cookie.indexOf(";", begin);

  if (end == -1)
  {
    end = document.cookie.length;
  }

  return unescape(document.cookie.substring(begin + name.length + 1, end));
}

function DeleteCookie(name)
{
  if (GetCookie(name))
  {
    document.cookie = name + "=; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }
}

function DeleteCookieEx(name, path, domain)
{
  if (GetCookie(name))
  {
    document.cookie = name + "=; expires=Thu, 01-Jan-70 00:00:01 GMT"
                    + (path ? "; path=" + path : "")
                    + (domain ? "; domain=" + domain : "");
  }
}

