/*#################################################
# Projet			: AGENCE SAINT-HUBERT								#
# Date Début	: 05/12/2007												#
# Last Modif	:	09/01/2008												#
# Auteur			: Emmanuel CEGO											#
# Description	: JS servant à la gestion du caddie #
###################################################*/


//****************************************//
// 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()', 5000);
}


//************************************************//
// FONCTION AJOUTANT UNE RÉFÉRENCE DANS UN COOKIE	//
//************************************************//
function AjouterRef(cookie,ref,nomandat){
	var anciennes_ref = GetCookie(cookie);
		 
	if(!anciennes_ref){
		caddie = ref;		 	 		
		var cgi = "/cgi-bin/selection/set_cookie.cgi?cookie=" + cookie + "&nomandat=" + nomandat + "&ref_already_here=0";	
		f1 = window.open(cgi,'caddie','top='+top_centre(185)+',left='+left_centre(345)+',height=185,width=345,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;
			var cgi = "/cgi-bin/selection/set_cookie.cgi?cookie=" + cookie + "&nomandat=" + nomandat + "&ref_already_here=0";	
			f1 = window.open(cgi,'caddie','top='+top_centre(185)+',left='+left_centre(345)+',height=185,width=345,scrollbars=no,status=no,toolbar=no,menubar=no');
		}else{
			caddie = anciennes_ref;					
			var cgi = "/cgi-bin/selection/set_cookie.cgi?cookie=" + cookie + "&nomandat=" + nomandat + "&ref_already_here=1";	
			f1 = window.open(cgi,'caddie','top='+top_centre(185)+',left='+left_centre(345)+',height=185,width=345,scrollbars=no,status=no,toolbar=no,menubar=no');
		}
	}
}


//***************************************************************************************************//
// FONCTION PERMETTANT DE VÉRIFIER LA PRÉSENCE D'UN COOKIE, RÉCUPÉRER LES RÉFÉRENCES ET LES AFFICHER //
//***************************************************************************************************//
function GetMyCookie(){
	var cookie = 'agencesainthubert_caddie';
	var refs = GetCookie(cookie);
	 	 
	if(!refs) alert("Votre caddie d'annonces est vide !");		 
	else window.location='/cgi-bin/selection/affiche_caddie.cgi?refs=' + refs + '&cookie=' + cookie;		 
}


//*******************************************************************************************************************//
// FONCTION PERMETTANT DE VÉRIFIER LA PRÉSENCE D'UN COOKIE, RÉCUPÉRER LES RÉFÉRENCES ET LES ENVOYER A LA SEARCHFICHE //
//*******************************************************************************************************************//
function GetListeCookie(){
	var cookie = 'agencesainthubert_caddie';
	var refs = GetCookie(cookie);
	 	 
	if(!refs) alert("Votre caddie d'annonces est vide !");		 
	else return refs;
}


//**************************************************//
// FONCTION SUPPRIMANT UNE RÉFÉRENCE DANS UN COOKIE	//
//**************************************************//
function DeleteRef(cookie, ref_to_delete){	 
	var anciennes_refs = GetCookie(cookie);		
	var pointvirgule_debut = /^;/;
	var pointvirgule_fin = /;$/;
	var double_pointvirgule = /;;/;
	var nouvelles_refs = new String();
	nouvelles_refs = anciennes_refs.replace(ref_to_delete, "");	
	nouvelles_refs = nouvelles_refs.replace(pointvirgule_debut, '');	
	nouvelles_refs = nouvelles_refs.replace(pointvirgule_fin, '');	
	nouvelles_refs = nouvelles_refs.replace(double_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 == ""){
		ViderCaddie('agencesainthubert_caddie');
	 	window.location = '/index.htm';
	}else
		window.location = '/cgi-bin/selection/affiche_caddie.cgi?refs=' + nouvelles_refs + '&cookie=' + cookie;
}


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