// VARIABLES GLOBALES//detection IE6var IE6 = false;
var strChUserAgent = navigator.userAgent;
var intSplitStart = strChUserAgent.indexOf("(",0);
var intSplitEnd = strChUserAgent.indexOf(")",0);
var strChMid = strChUserAgent.substring(intSplitStart, intSplitEnd);
var IE6 = false;
if(strChMid.indexOf("MSIE 6") != -1) IE6 = true;


var Indice=0;


function in_array(ext,array) {
	for (i=0;i<array.length;i++) {
		if (array[i] == ext) return true;
	}	
	return false;	
}


function imgSwap(oImg) {
   var strOver  = "-on"    // image to be used with mouse over
   var strOff = "-off"     // normal image
   
   if (IE6 && oImg.src.indexOf('vide.gif')!=-1) {
		try {
			var currentAlphaImg = oImg.filters(0).src
			if (currentAlphaImg.indexOf(strOver) != -1) {
				oImg.filters(0).src = currentAlphaImg.replace(strOver,strOff)
			} else {
				oImg.filters(0).src = currentAlphaImg.replace(strOff,strOver)
			}	
		}	
		catch(e) { }
   } else {
	   var strImg = oImg.src
	   if (strImg.indexOf(strOver) != -1) 
		  oImg.src = strImg.replace(strOver,strOff)
	   else
		  oImg.src = strImg.replace(strOff,strOver)	 
   }
}

function imgSwapPrecis(oImg,strOver,strOff) {
   
   if (IE6 && oImg.src.indexOf('vide.gif')!=-1) {
		try {
			var currentAlphaImg = oImg.filters(0).src
			if (currentAlphaImg.indexOf(strOver) != -1) {
				oImg.filters(0).src = currentAlphaImg.replace(strOver,strOff)
			} else if (currentAlphaImg.indexOf(strOff) != -1) {
				oImg.filters(0).src = currentAlphaImg.replace(strOver,strOff)
			}	
		}	
		catch(e) { }
   } else {
	   var strImg = oImg.src
	   if (strImg.indexOf(strOver) != -1) 
		  oImg.src = strImg.replace(strOver,strOff)
	   else if (strImg.indexOf(strOff) != -1) 
		  oImg.src = strImg.replace(strOver,strOff)	 
   }
}


 
 
function AffichageRelative(div) {
	etat=window.document.getElementById(div).style.display;	
	if (etat=='none') {
		window.document.getElementById(div).style.display="block";
	} else {
		window.document.getElementById(div).style.display="none";
	}	
}
function CacheRelative(div) {
	window.document.getElementById(div).style.display="none";
}
function MontreRelative(div) {	
	window.document.getElementById(div).style.display="block";
}



function CheckFichier(form, extension) {
	if (document.layers){ eval('formulaire = document.forms.'+form);}
	else{formulaire = eval('document.'+form);}
	
	if (formulaire.FileUpload.value=='') {
		alert('Veuillez selectionner un fichier.');
		return false;
	} else {
		ext = recup_extension(formulaire.FileUpload.value);// on appelle la fonction de récupération de l'extension et on récupere l'extension					
		if(in_array(ext,extension)){
			return true;
		} else {
			alert("L'extension du fichier ("+ext+") n'est pas correcte. Merci de charger une photo au format jpeg de preference.");
			return false;
		}
	}
}

function recup_extension(fichier) {
	if (fichier!="") {
		nom_fichier=fichier;// on récupere le chemin complet du fichier
		nbchar = nom_fichier.length;// on compte le nombre de caractere que compose ce chemin
		extension = nom_fichier.substring(nbchar-4,nbchar); // on récupere les 4 derniers caracteres
		extension=extension.toLowerCase(); //on uniforme les caracteres en minuscules au cas ou cela aurait été écris en majuscule...
		return extension; // on renvoi l'extension vers la fonction appelante
	}
}

function basename (path, suffix) {
    // *     example 1: basename('/www/site/home.htm', '.htm');
    // *     returns 1: 'home'
    var b = path.replace(/^.*[\/\\]/g, '');    
    if (typeof(suffix) == 'string' && b.substr(b.length-suffix.length) == suffix) {
        b = b.substr(0, b.length-suffix.length);
    }    
    return b;
}

function sleeps(time) {
	d=new Date();
	diff=0;
	while(diff < time) {
		n=new Date();
		diff=n-d;
	}
}


function SlideAuto(container, side, timer) {
	var SlideAuto = new Rotation;
	SlideAuto.scrollAuto(container,side);
	TimerEtape = setTimeout("SlideAuto('"+container+"','"+side+"','"+timer+"')",timer);
}

function SlideAuto2(instance, container, side, timer){
	setTimeout(function(){
		instance.scrollContentPas(container, side, 1);
		SlideAuto2(instance,container,side,timer);
	},timer);
}


var Rotation = Class.create({

	initialize: function() 
	{
		Prototype.Browser.IE6 = Prototype.Browser.IE && (navigator.appVersion.indexOf('MSIE 6.0') != -1);
		
		this.NumDiv = 0;
	},
	
	// Deuzs

	scrollContent: function(container, direction)
	{
		var container = $(container);
		var elems = container.childElements();		
		var dims = elems[0].getDimensions();
		if(elems.length < 2) return;
		var xmove = 0;
		var ymove = 0;
		
		
		if(direction == 'right')
		{
			xmove = -dims.width;
			
			var onFinish = function(effect)
			{				
				effect.element.appendChild(elems[0]);
				effect.element.setStyle({left: '0px'});
			}			
		}
		else if(direction == 'left')
		{
			container.insert({ top: elems[elems.length-1]});
			pmove = elems[elems.length-1].getWidth();
			xmove=pmove;
			container.setStyle({left: '-' + xmove + 'px'});
			var onFinish = function(effect)	{}
		}
		
		new Effect.Move(container, {
							x: xmove, y: ymove, 
							duration: 0.5, 
							mode: 'relative',	
							queue: { position: 'end', scope: 'TR', limit: 1 } ,
							afterFinish: onFinish.bind(elems)
						});
		
		
	},
	
	
	scrollContentPas: function(container, direction, pas)
	{
		var container = $(container);
		var elems = container.childElements();
		var dims = elems[0].getDimensions();		
		if(elems.length < 2) return;
		var xmove = 0;
		var ymove = 0;
		
		if(direction == 'right')
		{
			
			xmove = -dims.width*pas;			
			var onFinish = function(effect)
			{
				for ($i=0;$i<pas;$i++) {
					effect.element.appendChild(elems[$i]);
					effect.element.setStyle({left: '0px'});						
				}
			}			
		}
		else if(direction == 'left')
		{
			xmove=0;
			for ($i=0;$i<pas;$i++) {
				container.insert({ top: elems[elems.length-($i+1)]});
				pmove = elems[elems.length-1].getWidth();
				xmove+=pmove;
			}
			container.setStyle({left: '-' + xmove + 'px'});
			var onFinish = function(effect)	{}
		}
		
		new Effect.Move(container, {
			x: xmove, y: ymove, 
			duration: 0.5, 
			mode: 'relative',							
			afterFinish: onFinish.bind(elems)
		});
		
		
	},
	
	scrollAuto: function(container,direction)
	{
		var container = $(container);
		var elems = container.childElements();
		var dims = elems[0].getDimensions();		
		if(elems.length < 2) return;
		var xmove = 0;
		var ymove = 0;
		
		if(direction == 'right')
		{
			xmove = -dims.width;
			
			var onFinish = function(effect)
			{				
				effect.element.appendChild(elems[0]);
				effect.element.setStyle({left: '0px'});
			}			
		}
		else if(direction == 'left')
		{
			container.insert({ top: elems[elems.length-1]});
			pmove = elems[elems.length-1].getWidth();
			xmove=pmove;
			container.setStyle({left: '-' + xmove + 'px'});
			var onFinish = function(effect)	{}
		}
		
		new Effect.Move(container, {
			x: xmove, y: ymove, 
			duration: 2, 
			mode: 'relative',							
			afterFinish: onFinish.bind(elems)
		});
		
	}
});


var Gallery_Rotation = new Rotation;
function SlideNumber (IndiceClick,Slide,Div) {
	$('Numero'+IndiceEnCours).removeClassName('TRougeFonce');
	$('Numero'+IndiceEnCours).removeClassName('Gras');
	$('Numero'+IndiceClick).addClassName('TRougeFonce');
	$('Numero'+IndiceClick).addClassName('Gras');
	
	Pas = IndiceClick-IndiceEnCours;
	if (Pas<0) {
		Slide.scrollContentPas(Div,'left',-Pas);
	} else if (Pas>0) {
		Slide.scrollContentPas(Div,'right',Pas);
	}
	
	//on change les indices
	IndiceEnCours = IndiceClick;
}

var IndiceEnCours = 1;


function CopieAdresse(NomForm) {
	
	TabInput = Form.getElements(NomForm);
	for(i=1;i<TabInput.length;i++) {
		Type = TabInput[i].inspect();	
		Champ = TabInput[i].serialize();
		NomChamp = Champ.substr(0,Champ.indexOf("="));
		
		//INPUT
		if (Type.indexOf("input")!=-1) {
			try {
				if (eval('$(NomForm).'+NomChamp+'.length>0')) {
					for (var cpt = 0 ; (cpt < eval('$(NomForm).'+NomChamp+'.length')) ; cpt++) {
						if (eval('$(NomForm).'+NomChamp+'['+cpt+'].checked==true')) eval('$(NomForm).'+NomChamp+'Liv['+cpt+'].checked=true')
					} 
				} else {
					eval('$(NomForm).'+NomChamp+'Liv.value=$(NomForm).'+NomChamp+'.value');
				}
			}
			catch(e) {}
			
		//SELECT
		} else if (Type.indexOf("select")!=-1) {	
			for (var cpt = 0 ; (cpt < eval('$(NomForm).'+NomChamp+'.length')) ; cpt++) {
				if (eval('$(NomForm).'+NomChamp+'['+cpt+'].selected==true')) eval('$(NomForm).'+NomChamp+'Liv['+cpt+'].selected=true')
			}
			
		//TEXTAREA
		} else  if (Type.indexOf("textarea")!=-1) {
			eval('$(NomForm).'+NomChamp+'Liv.value=$(NomForm).'+NomChamp+'.value');
		}
		
	}
}


function CheckChamp(NomForm) {
	var arr = $(NomForm).getElements(); 
	var response = true;
	arr.each(
		function(item) {
			if (item.identify().indexOf("anonymous_element")==-1 && item.getValue()=='') {
				response = false;
			}
		}
	);
	return response;
}




function bonmail(mailteste) {
	
	if (mailteste!='') {
		
		var reg = new RegExp('^[a-z0-9]+([_|\.|-]{1}[a-z0-9]+)*@[a-z0-9]+([_|\.|-]{1}[a-z0-9]+)*[\.]{1}[a-z]{2,6}$', 'i');
	
		if(reg.test(mailteste))	{
			return(true);
		} else {
			return(false);
		}
	} else {
		return (true);
	}
}





function AfficheFade(Type) {

	new Effect.Fade('Zone',
				{
					duration: 2,
					from: 1,
					to: 0,
					afterFinish:function() 
					{
						new Ajax.Request('Fonctions/fonctions_ajax.php',
										 {
											 method:'post',
											 parameters:
											 {
												 fonction:'RotatifNext',
												 param1:Type,
												 param2:Indice
											 },
											 evalScripts:true,
											 onComplete:function(t)
											 {
												
												var myObject = eval('(' + t.responseText + ')');										 												 
												Indice=myObject[1];
												
												new Ajax.Updater('Zone','Fonctions/fonctions_ajax.php',
																 {
																	 method:'post',
																	 parameters:
																	 {
																		 fonction:'Rotatif'+Type,
																		 param1:myObject[0],
																		 param2:'ajax'
																	 },
																	 evalScripts:true,
																	 onComplete:function()
																	 {
																		 
																		 new Effect.Appear('Zone',
																						{
																							duration: 2,
																							from: 0,
																							to: 1,
																							afterFinish:function() {
																								setTimeout(function() { AfficheFade(Type) },6000);
																							}
																						});
																	 }																						
																 });
											 }
										 });
					}
				});
}




function TagSuggestProfessionel(Mot,Table,Champ,Type,Rand) {
	var div = 'search_suggest'+Rand;
	new Ajax.Request('Fonctions/fonctions_ajax.php',
	{
		method:'post',
		parameters:
		{
			fonction:'TagSuggestProfessionel',
			param1:Mot,
			param2:Table,
			param3:Champ,
			param4:Type
		},
		evalScripts:true,
		onComplete:function(transport) {							
			//on cache toutes les autres
			var TabDiv = document.getElementsByTagName('div');
			for ($i=0;$i<TabDiv.length;$i++) {
				var chaine = TabDiv[$i].id;
				var reg=new RegExp("^search_suggest","i");  // le "i" sert a ne pas tenir compte de la casse (MAJ/min)
				if(chaine.match(reg)) CacheRelative(TabDiv[$i].id);
			}
			
			var str = transport.responseText.split("\n");
			if(str.length>1) {	
				$(div).update();												
				for(i=0; i < str.length - 1; i++) {
					$(div).insert(
								  {
									  bottom: '<div onmouseover="this.className=\'suggest_link_over Texte\'" onmouseout="this.className=\'suggest_link Texte\'" class="suggest_link Texte"									   onclick="$(\'txtSearch'+Rand+'\').value=\''+str[i]+'\'; $(\'search_suggest'+Rand+'\').update(); $(\'search_suggest'+Rand+'\').hide();" >' + str[i] + '</div>'
								  });
				}
				MontreRelative(div);
				//setTimeout("CacheRelative('"+div+"')",15000);
			} else {
				CacheRelative(div);
			}
		}
	});
}


//Click function
function setSearch(value,Rand) {
	$('txtSearch'+Rand).value = value;
	$('search_suggest'+Rand).style.display = 'none';
	$('search_suggest'+Rand).innerHTML = '';
}

