//*
//| cookie.js
//|------------------------------------------------------------------------------
//| Copyright 2001 by GalaSoft Laurent Bugnion
//|------------------------------------------------------------------------------
//| Website                : www.benoitlange.ch
//| Language               : JavaScript
//| Author                 : Laurent Bugnion (galasoft-LB@bluewin.ch)
//|------------------------------------------------------------------------------
//| Description:
//|   Defines the cookie functions.
//|
//| History:
//|   06.03.2000 Lbu : Created in this version.
//|------------------------------------------------------------------------------
//*

var cookiePath = '/';

// Cookie functions -------------------------------------------------------------
// Thanx a lot to Jerry Aman, Optima System
// and Bill Dortch, hIdaho Design for the free use of their code.
// Found on http://www.cookiecentral.com/js_cookie8.htm

function getCookieVal( offset )
{
  var endstr = document.cookie.indexOf ( ";", offset );

  if ( endstr == -1 )
  {
    endstr = document.cookie.length;
  }
  return unescape( document.cookie.substring( offset, endstr ) );
}

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( 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" : "" );
}

function deleteCookie ( name )
{
  var exp = new Date();
  exp.setTime ( exp.getTime() - 1 );  // This cookie is history
  setCookie( name, "", exp, cookiePath );
}


//-------------------------------------------------------------------------------
//This function tests if the cookies are enabled.

function testCookie()
{
  var expDate = new Date();
  //valid one minute
  expDate.setTime( expDate.getTime() + ( 60 * 1000 ) );
  setCookie( "testCookie", "OK", expDate );
  testing = getCookie( "testCookie" );

  if ( testing == "OK" )
  {
    return true;
  }
  else
  {
    return false;
  }
}

// End of Cookie functions ------------------------------------------------------
