/**********************************************************************************/
/******************************Cr?ation et Gestion des cookies ********************/
/**********************************************************************************/

	var outils_id = [ 
					'curiculum-vitae_element',
					'highlight_element',
					'press_releases_element',
				 	'calendar_element',
					'cards_element',
					'production_element',
					'mymag_element',
					'jobs_element',
					'stocks_element',
					'glossary_element',
					'televideo_element',
					'docs_center_element',
					'bookmarks_element'				
				];
	
	var b_outils = [
		 'b_news.html',
		 'b_hightlights.html',
		 'b_press.html',
		 'b_calendar.html',
		 'b_flashcards.html',
		 'b_products.html',
		 'b_my_mag.html',
		 'b_job_board.html',
		 'b_share.html',
		 'b_glossary.html',
		 'b_mediacenter.html',
		 'b_doc_center.html',
		 'b_bookmarks.html'
	];

	// association des 2 tableaux
	// le nom de l'id de l'outil permet de r?cup?r? le nom du cookie qui est ?galement l'outil 
	// exemple : tools['calendar_element'] retourne b_calendar.html
	var tools = b_outils.associate(outils_id); 


// modification du cookie selon profil
function setCookie_profil(elem)
{
	setIdprofilCookie(elem.value)
}

//cr?ation du cookie de sauvegarde de donn?e
// initialisation ? id@x@y@nb@
// idprofil@posX@posY@nbParam
// si nbParam > 0 => on rajoute les parametre a la suite
function savaData()
{
	
	
	outils_id.each(function(item,index){
								if(!Cookie.get(tools[item]))
								{
									var outil = tools[item]
									Cookie.set(tools[item],'0@x@y@nb@', {duration:365,path:"/"});
								}
							});
	outils_id.each(function(item,index){
							//alert(Cookie.get(tools[item]))
							//Cookie.remove(tools[item]);
						
							});
}


// r?cup?ration des donn?es du cookie
// prend en param un cookie et un chiffre 
// 0 = iprofil 
// 1 = posX 
// 2  = posY
// 3 = nbParam
// 4 = les parametre sous forme de tableau

//alert(getValueCookie('b_press.html',4))
function getValueCookie(myCookie,mode)
{
	if(Cookie.get(myCookie))
	{
		var cookie_data = Cookie.get(myCookie);
		var tab = cookie_data.split("@");
		var chaine ='';
		var tab_chaine = $A([]);
		switch(mode)
		{
			case 0:
				chaine = tab[0];
				return chaine;
			break;
			case 1:
				chaine = tab[1];
				return chaine;
			break;
			case 2:
				chaine = tab[2];
				return chaine;
			break;
			case 3:
				chaine = tab[3];
				return chaine;
			break;
			case 4:
				if(tab[2] > 0)
				{
				
					tab.each(function(item,index){
									  if(index > 3){tab_chaine.include(item)}
									  });
					return tab_chaine;
				}
					else
					{
						//alert('error : Ce Cookie ne possede pas de parametre');
					}
			break;
		} 
		
	}
		else
		{
			//alert("Error : Cookie n'existe pas")
		}
}

// return le cookie sous forme de tableau
function getTab_cookie(mycookie)
{
	var tab = mycookie.split('@');
	return tab;
}

// modification de idprofil de chaque outil
function setIdprofilCookie(elem)
{
	b_outils.each(function(item,index){
						   		var tab_cookie = getTab_cookie(Cookie.get(item)); // transformation en tableau
								tab_cookie[0] = elem;
								var chaine ='';
								tab_cookie.each(function(item2,index2){
														 if(item2 !='')
														 {
														 	chaine += item2+'@';
														 }
														});
						  		Cookie.remove(item);
								Cookie.set(item,chaine, {duration:365,path:"/"});
						   })
}

//modification de la posX 
//prend en parametre le nom du cookie et la nouvelle position
function setposXCookie(myCookie,newPosX)
{
	if(Cookie.get(myCookie))
	{
		var tab_cookie = getTab_cookie(Cookie.get(myCookie)); // transformation en tableau
		tab_cookie[1] = newPosX;
		var chaine ='';
		tab_cookie.each(function(item2,index2){
								 if(item2 !='')
								 {
									chaine += item2+'@';
								 }
						});
		Cookie.remove(myCookie);
		Cookie.set(myCookie,chaine, {duration:365,path:"/"});
	}
		else
		{
			//alert("error : le cookie n'existe pas")
		}
}

//setposYCookie('b_press.html',500)
//modification de la posY
//prend en parametre le nom du cookie et la nouvelle position
function setposYCookie(myCookie,newPosY)
{
	if(Cookie.get(myCookie))
	{
		var tab_cookie = getTab_cookie(Cookie.get(myCookie)); // transformation en tableau
		tab_cookie[2] = newPosY;
		var chaine ='';
		tab_cookie.each(function(item2,index2){
								 if(item2 !='')
								 {
									chaine += item2+'@';
								 }
						});
		Cookie.remove(myCookie);
		Cookie.set(myCookie,chaine, {duration:365,path:"/"});
	}
		else
		{
			//alert("error : le cookie n'existe pas")
		}
}

// fonction pour modifier le nombre de parametre et ajout? les parametres dans le cookie
// utiliser lors d'un edit d'un outil 
//tab_test = ['theme1'];
//tab_test1 = ['theme1','theme2','theme3'];
//setParamCookie('b_press.html',tab_test)
function setParamCookie(myCookie,tab_param)
{
	if(Cookie.get(myCookie))
	{
		var tab_cookie = getTab_cookie(Cookie.get(myCookie)); 
		var nbparam = tab_param.length;
		tab_cookie[3] = nbparam;
		var tab_copy =$A([]);
		tab_cookie.each(function(item,index){
								 	if(index <= 3)
								 	{
										tab_copy.include(item);	 
									}
								 });
		tab_cookie = tab_copy;
		var chaine='';
		tab_param.each(function(item,index){
									 tab_cookie.include(item)
								});
		tab_cookie.each(function(item2,index2){
								 if(item2 !='')
								 {
									chaine += item2+'@';
								 }
						});
		Cookie.remove(myCookie);
		Cookie.set(myCookie,chaine, {duration:365,path:"/"});
		
	}
		else
		{
			//alert("error : le cookie n'existe pas")
		}
}

function initParamCookie(myCookie)
{
	if(Cookie.get(myCookie)){
		var idprofil = (myCookie,0);
		var posX = getValueCookie(myCookie,1);
		var posY = getValueCookie(myCookie,2);
		var chaine = idprofil+'@'+posX+'@'+posY+'@nb@'
		Cookie.remove(myCookie);
		Cookie.set(myCookie,chaine, {duration:365,path:"/"});
	} 
}
