//############## FONCTION PERMETTANT L'ENVOI DU COOKIE #######################
function SetCookie(name,value,expdate,path)
	{
	 //recuperation des arguments et du nombre d'argument 
	 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;
	 //pose du cookie
	 document.cookie = name + "=" + escape (value) +
	 		((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
			((path == null) ? "" : ("; path=" + path)) +
			((domain == null) ? "" : ("; domain=" + domain)) +
			((secure == true) ? "; secure" : "");
	}


//############## FONCTION RETOURNANT LA VALEUR D'UN COOKIE ###################
function getCookieVal(offset)
	{
	 var endstr = document.cookie.indexOf (";", offset);
	 if (endstr == -1)
	 		endstr = document.cookie.length;
	 return unescape (document.cookie.substring (offset, endstr));
	}


//############## FONCTION RÉCUPÉRANT LE COOKIE D'UN CLIENT ###################
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 false;
	}
 

//############ FONCTION ENREGISTRANT UN COOKIE CHEZ LE CLIENT ################
function EnregistreCookie(cookie)
	{
	 var ref = window.opener.caddie;
	 var path = "/";
	 var expdate = new Date ();
	 expdate.setTime (expdate.getTime() + (24 * 60 * 60 * 1000));
	 SetCookie(cookie,ref,expdate,path);
	 setTimeout('window.close()',1000);
	}


//############# FONCTION AJOUTANT UNE RÉFÉRENCE DANS UN COOKIE ###############
function AjouterRef(cookie,ref)
	{
	 var anciennes_ref = GetCookie(cookie);
	 var cgi = "/cgi-bin/cookie/set_cookie.cgi?cookie=" + cookie;	
	 
	 if(!anciennes_ref)
	 		{
		 	 caddie = ref;		 	 
		 	 f1 = window.open(cgi,'caddie','top='+top_centre(98)+',left='+left_centre(398)+',height=98,width=398,scrollbars=no,status=no,toolbar=no,menubar=no');
			}
	 else
	 		{
			 //On regarde si la reference n'est pas deja enregistrée;
			 var resultat = anciennes_ref.search(ref);
			
			 if(resultat == -1)
			 	 {
					var insert_ref = ";" + ref;
					nouvelles_refs = anciennes_ref + insert_ref;
					caddie = nouvelles_refs;					
					f1 = window.open(cgi,'caddie','top='+top_centre(98)+',left='+left_centre(398)+',height=98,width=398,scrollbars=no,status=no,toolbar=no,menubar=no');
				 }
			 else
			 	 {
					caddie = anciennes_ref;					
					f1 = window.open(cgi,'caddie','top='+top_centre(98)+',left='+left_centre(398)+',height=98,width=398,scrollbars=no,status=no,toolbar=no,menubar=no');
				 }
			}
	}


//####### FONCTION PERMETTANT DE VÉRIFIER LA PRÉSENCE D'UN COOKIE ET LE RÉCUPÉRER ########
function GetMyCookie()
	{
	 var cookie = 'bellifontaine_caddie';
	 var refs = GetCookie(cookie);
	 	 
	 if(!refs)	 	 
			alert("Votre caddie est vide !");		 
	 else	 	 
			window.location='/cgi-bin/album/affiche_caddie.cgi?refs=' + refs + '&cookie=' + cookie;		 
	}


//############# FONCTION SUPPRIMANT UNE RÉFÉRENCE DANS UN COOKIE ###############
function DeleteRef(cookie,ref)
	{	 
	 var anciennes_refs = GetCookie(cookie);
	 var delete_ref = ref;
	 var pointvirgule = /;$/;
	 var nouvelles_refs = new String();
	 nouvelles_refs = anciennes_refs.replace(delete_ref,"");
	 nouvelles_refs = nouvelles_refs.replace(pointvirgule,'');
	 var path = "/";
	 var expdate = new Date ();
	 expdate.setTime (expdate.getTime() + (24 * 60 * 60 * 1000));
	 SetCookie(cookie,nouvelles_refs,expdate,path);
	 
	 // Traitement dans le cas où on efface la dernière référence...
	 if (nouvelles_refs == ";")
	 	 {
	 	 	EffacerCaddie('bellifontaine_caddie');
	 	 	window.location = '/index.htm';
	 	 }
	 else	 	 
	 		window.location = '/cgi-bin/album/affiche_caddie.cgi?refs=' + nouvelles_refs + '&cookie=' + cookie;
	}


//############# FONCTION PERMETTANT DE SUPPRIMER UN COOKIE ###############
function EffacerCaddie(cookie)
	{
	 var path = "/";
	 var refs = "";
	 var expdate = new Date ();
	 expdate.setTime (expdate.getTime() + (24 * 60 * 60 * 1000));
	 SetCookie(cookie,refs,expdate,path);
	 window.location = '/';
	}