// -------------------------------------------------------------------------
//  Gestion des cookies
//  PREFIXE : cook0
// -------------------------------------------------------------------------

// -------------------------------------------------------------------------
//  Classe de gestion des cookies
// -------------------------------------------------------------------------

// -------------------------------------------------------------------------
//  Constructeur
// -------------------------------------------------------------------------

function shr_cook0_clsCookies()
{
 if (document.cookie.length)
   { this.strCookies = ' ' + document.cookie; }
}


// -------------------------------------------------------------------------
//  Enregistrer cookie
// -------------------------------------------------------------------------
//  [IN] pstrName    Nom du cookie 
//  [IN] pstrValue   Donnees
//  [IN] pintExpires Nombre de jours avant expiration
// -------------------------------------------------------------------------

shr_cook0_clsCookies.prototype.SetCookie = function (pstrName, pstrValue, pintExpires)
{
 var lobjDate; // Date d'expiration du cookie  

 if (pintExpires)
   { 
    lobjDate = new Date();   
    lobjDate.setDate(lobjDate.getDate() + pintExpires);
    document.cookie = pstrName + "=" + escape(pstrValue) + ";expires=" + lobjDate.toGMTString();
   }
 else  
   { document.cookie = pstrName + "=" + escape(pstrValue); }
}


// -------------------------------------------------------------------------
//  Recuperer cookie
// -------------------------------------------------------------------------
//  [IN] pstrName Nom du cookie 
//  [RETURN] Donnees
// -------------------------------------------------------------------------

shr_cook0_clsCookies.prototype.GetCookie = function (pstrName)
{
 if (this.strCookies)
   {
	var lintStart = this.strCookies.indexOf(' ' + pstrName + '=');	
	
    // Cookie non trouve
	if (lintStart == -1) { return null; }	
	
	var lintEnd = this.strCookies.indexOf(";", lintStart);
	if (lintEnd == -1) { lintEnd = this.strCookies.length; }
	lintEnd -= lintStart;
	var lstrCookie = this.strCookies.substr(lintStart, lintEnd);
	return unescape(lstrCookie.substr(lstrCookie.indexOf('=') + 1, lstrCookie.length - lstrCookie.indexOf('=') + 1));
   }

 // Cookie non trouve
 return null;
}

