function setCookie (name, value, expires, path, domain, secure) {
  // set time, it's in milliseconds
  var today = new Date();
  today.setTime(today.getTime());

  /**
   * If the expires variable is set, make the correct 
   *  expires time, the current script below will set 
   *  it for 'expires' number of days, to make it for hours, 
   *  delete * 24, for minutes, delete * 60 * 24
   */
  if (expires) {
    expires = expires * 1000 * 60 * 60 * 24;
  }

  var expires_date = new Date(today.getTime() + (expires));
  // set the cookie
  document.cookie = name + "=" +escape( value ) +
    ((expires) ? ";expires=" + expires_date.toGMTString() : "") + 
    ((path) ? ";path=" + path : "")  + 
    ((domain) ? ";domain=" + domain : "") +
    ((secure) ? ";secure" : "");
}

function getCookie (name) {
  // YYY: document.cookie only returns name=value, not the other components
  var crumbles = document.cookie.split(';'); /* split our cookies */
  var temp_cookie = "";
  var cookie_name = "";
  var cookie_value = "";
  
  for (i=0; i<crumbles.length; i++) {
    // now we'll split apart each name=value pair
    temp_cookie = crumbles[i].split("=");
            
    // and trim left/right whitespace while we're at it
    cookie_name = temp_cookie[0].replace(/^\s+|\s+$/g, "");
      
    // if the extracted name matches the cookie name
    if (cookie_name == name) {
      if (temp_cookie.length > 1) /* only strip whitespace if value exists */
	cookie_value = unescape(temp_cookie[1].replace(/^\s+|\s+$/g, ""));

      return cookie_value;
    }
  }

  return null;
}
