/*******************************************************************************
 *
 *  File Name.... cookieTools.js
 *
 *  Written By... Alex Porven
 *  Created...... September 15, 2008
 *
 * NOTE:
 * The functions in this file are derived from the FREE work of Bill Dortch,
 * hIdaho Design, and modified for the U.S. Coast Guard Auxiliry, 1st Southern
 * District.
 *
 ******************************************************************************/

//------------------------------------------------//
// Function: GetCookieVal (For internal use only) //----------------------------
//------------------------------------------------//

function getCookieVal( offset ) {
  var endstr = document.cookie.indexOf( ";", offset );
  if ( endstr == -1 ) endstr = document.cookie.length;
  return decodeURIComponent( document.cookie.substring( offset, endstr ) );
}

//---------------------//
// Function: GetCookie //-------------------------------------------------------
//---------------------//

function GetCookie( name ) {

  var arg  = name + "=";
  var alen = arg.length;
  var clen = document.cookie.length;
  var i    = 0;

  while ( i < clen ) {
    var j = i + alen;
    if ( document.cookie.substring(i,j) == arg ) return getCookieVal(j);
    i = document.cookie.indexOf(" ",i) + 1;
    if ( i == 0 ) break;
  }

  return null;

}

//---------------------//
// Function: SetCookie //-------------------------------------------------------
//---------------------//

function SetCookie( name, value, expires, path, domain, secure ) {

  document.cookie = name + "=" + encodeURIComponent( value ) +
      ((expires) ? "; expires=" + expires.toGMTString() : "") +
      ((path)    ? "; path="    + path                  : "") +
      ((domain)  ? "; domain="  + domain                : "") +
      ((secure)  ? "; secure"                           : "" );

}

//------------------------//
// Function: DeleteCookie //----------------------------------------------------
//------------------------//

function DeleteCookie( name, path, domain ) {

  if ( GetCookie(name) ) {
    document.cookie = name + "=" +
        ((path)   ? "; path="   + path   : "") +
        ((domain) ? "; domain=" + domain : "") +
        "; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }

}
