//////////////////////////////////////////////////////////////////////////////////////////////////
//								Ajax															//
//////////////////////////////////////////////////////////////////////////////////////////////////
	//AFFICHER une page PHP ou HTML dans une div
	envoieRequete = function(url,id,loading){//5 mars
		/*
		url = url de la page à appeler
		id = ID de la div pour la réponse de la page
		loading = true/false
			true = si il faut marquer à l'utilisateur un message de chargement
			false = Pas de page de chargement
		*/
		if(loading){
			getObj(id).innerHTML='<span style="color:#FF0000">Chargement en cours...</span>&nbsp;<img src="images/loading.gif" />';
		}
		var xhr_object=null;
		if(window.XMLHttpRequest)
			xhr_object=new XMLHttpRequest();
		else
			if(window.ActiveXObject) xhr_object=new ActiveXObject("Microsoft.XMLHTTP");
			xhr_object.open("GET",url,true);
			xhr_object.onreadystatechange=function(){
				if(xhr_object.readyState==4){
					getObj(id).innerHTML=xhr_object.responseText;
				}
			}
		xhr_object.send(null);
	}
	
	//EXECUTER une page PHP sans L'AFFICHER
	ajax_file = function(url){//5 mars
		if(texte=this.file(url)){
			return texte;	
		}
	}
	
	file = function(fichier){//5 mars
		 if(window.XMLHttpRequest)
			  xhr_object=new XMLHttpRequest();
		 else if(window.ActiveXObject)
			  xhr_object=new ActiveXObject("Microsoft.XMLHTTP");
		 else
			  return(false);
		 xhr_object.open("GET", fichier, false);
		 xhr_object.send(null);
		 if(xhr_object.readyState== 4) return(xhr_object.responseText);
		 else return(false);
	}

//////////////////////////////////////////////////////////////////////////////////////////////////
//								Controle Formulaire												//
//////////////////////////////////////////////////////////////////////////////////////////////////
	verif_form = function(control,login){//5 mars
		if(control.value==''){
			this.form_response(control.id,'Le champ ne doit pas &ecirc;tre vide','faux');//Faux
		}else{
			this.form_response(control.id,'','vrai');		
			if(control.id=='mail'){
				adresse=control.value;
				var place=adresse.indexOf("@",1);
				var point=adresse.indexOf(".",place+1);
				if((place>-1)&&(adresse.length>2)&&(point>1)){
					if(login){
						if(this.file('inscription_login.php?mail='+adresse)=='false'){//Si c'est true
							this.form_response(control.id,'','vrai');
						}else{
							this.form_response(control.id,response_formulaire_exists,'faux');
						}
					}else{
						this.form_response(control.id,'','vrai');
					}
				}else{
					this.form_response(control.id,'Ceci n\'est pas une adresse mail valide','faux');
				}
			}else if(control.id.substring(0,3)=='mdp'){
				if(this.getObj('mdp1').value!=this.getObj('mdp2').value){
					this.form_response('mdp1','Les 2 mots de passe doivent avoir la m&ecirc;me valeur','faux');
					this.form_response('mdp2','Les 2 mots de passe doivent avoir la m&ecirc;me valeur','faux');
				}else{
					this.form_response('mdp1','','vrai');
					this.form_response('mdp2','','vrai');
				}
			}
		}
	}

	form_response = function(control_id,response,src_img){//5 mars
		var id_img='img_'+control_id;
		var id_div='div_'+control_id;
		this.getObj(id_img).style.display='inline';
		this.getObj(id_img).src='images/'+src_img+'.png';
		if(src_img=='vrai'){
			this.getObj(id_img).alt='vrai';
		}else{
			this.getObj(id_img).alt=response;
		}
	}
	
	disabled_but_valid = function(){//5 mars
		var var_return=this.search_tag('img',4,'img_');
		var trouv=false;
		for(var po=0;po<var_return.length;po++){
			var temp=var_return[po].replace('img_','');//Pour tester si l'input existe bien
			if((this.getObj(temp))&&(this.getObj(var_return[po]).alt!='vrai')){//Si c'est différent
				trouv=true;
			}
		}
		
		if(trouv){
			alert('Veuillez verifier tous les champs svp');
			return false;
		}else{
			return true;	
		}
	}

//////////////////////////////////////////////////////////////////////////////////////////////////
//								Cryptographe													//
//////////////////////////////////////////////////////////////////////////////////////////////////
	verif_crypto = function(valeur,SID){//5 mars
		if(SID==''){
			texte=this.file('js/cryptographe/verifier.php?code='+valeur);
		}else{
			texte=this.file('js/cryptographe/verifier.php?code='+valeur+'&'+SID);
		}
		this.getObj('img_code').style.display='inline';
		if(texte==0){
			this.getObj('img_code').src='images/faux.png';
			this.getObj('img_code').alt='Faux';
			document.images.cryptogram.src='js/cryptographe/cryptographp.php?cfg=0&1&'+Math.round(Math.random(0)*1000)+1;
		}else if(texte==1){
			this.getObj('img_code').src='images/vrai.png';
			this.getObj('img_code').alt='Bonne réponse';
			this.getObj('div_code').innerHTML='';
		}
	}

//////////////////////////////////////////////////////////////////////////////////////////////////
//								DOM:element														//
//////////////////////////////////////////////////////////////////////////////////////////////////
	search_tag = function(tag,nbr_caractere,id_search){//5 mars
		//Ex: tag = img, input, select, td, tr
		array_trouv=new Array();
		var tags=[tag];
		var i=0;
		for(tagCounter=0;tagCounter<tags.length;tagCounter++){
			var inputs=document.getElementsByTagName(tags[tagCounter]);
			for(var no=0;no<inputs.length;no++){
				if(inputs[no].id.substring(0,nbr_caractere)==id_search){
					array_trouv[i]=inputs[no].id;
					i++;
				}				
			}
		}
		return array_trouv;
	}
	
	del_node = function(tag_name,node_source,node_id_delete){//5 mars
		/*
		tag_name = Nom de la node à supprimer
		node_source = Nom du conteneur
		node_id_delete = ID de la node à suppimer
		*/
		var tabtr=this.getObj(node_source).getElementsByTagName(tag_name);
		for(i=0;i<tabtr.length;i++){
			if(tabtr[i].id==node_id_delete){
				tabtr[i].parentNode.removeChild(tabtr[i]);
			}
		}
	}
	
	checky = function(){//17 mars 2008
		var array_check=this.search_tag('input',6,'check_');
		for(var i=0;i<array_check.length;i++){
			var element=document.getElementById(array_check[i]);
			if(element.type=="checkbox"){
				if(element.checked){
					element.checked=false;
				}else{
					element.checked=true;
				}
			}
		}
	}

//////////////////////////////////////////////////////////////////////////////////////////////////
//								Chiffres														//
//////////////////////////////////////////////////////////////////////////////////////////////////
	arrondi = function i(nb,texte,sep){//5 mars
		sep=texte.split(sep);
		return_texte=sep[0];
		if(sep[1]){
			return_texte+='.';
			if(sep[1].substr(nb,1)>=5){//Plus grand
				var tmp=sep[1].substr(0,nb);
				tmp++;
				if(tmp==100){
					return_texte=Number(sep[0])+1;
				}else{
					return_texte+=tmp;
				}
			}else if(sep[1].substr(nb,1)<5){//Plus petit
				if(sep[1].substr(0,nb)==00){
					return_texte=sep[0];
				}else{
					return_texte+=sep[1].substr(0,nb);
				}
			}
		}
		return return_texte;
	}

//////////////////////////////////////////////////////////////////////////////////////////////////
//								Event															//
//////////////////////////////////////////////////////////////////////////////////////////////////
	frapper_keyboard = function(code){//5 mars
		return code;
	}
		
	if(navigator.appName=="Microsoft Internet Explorer"){
		function toucheA(){frapper_keyboard(event.keyCode)};
		document.onkeydown=toucheA;
	}else{
		function toucheB(evnt){frapper_keyboard(evnt.keyCode)};
		document.onkeydown=toucheB;
	}

//////////////////////////////////////////////////////////////////////////////////////////////////
//								Localisation Objet												//
//////////////////////////////////////////////////////////////////////////////////////////////////
	getObj = function(objID){//5 mars
		if(document.getElementById){return document.getElementById(objID);}
		else if(document.all){return document.all[objID];}
		else if(document.layers){return document.layers[objID];}
	}
	
	getCoordinates = function(control){//5 mars
		if(this.getObj(control)){
			var elm = this.getObj(control);
		}else{
			var elm = control;
		}
		var offsetLeft = 0;
		var offsetTop = 0;
		while(elm.offsetParent){
			offsetLeft += elm.offsetLeft;
			offsetTop += elm.offsetTop;
			if(elm.scrollTop > 0){
				offsetTop -= elm.scrollTop;
			}
			elm = elm.offsetParent;
		}
		return [offsetLeft, offsetTop];
	}

//////////////////////////////////////////////////////////////////////////////////////////////////
//								Effects															//
//////////////////////////////////////////////////////////////////////////////////////////////////
	var timer;
	fadeIn = function(id,fadeInSpeed,opacity){//5 mars 
		//document.getElementById;
		//fadeInSpeed = 20 (content fade-in speed (0 - 30; 0 = no fading))
		//opacity = Rien à mettre ici;
		var obj=this.getObj(id);
		if(obj){
			if(document.all) obj.style.position = 'absolute';
			if(fadeInSpeed && obj.style.opacity < 1){
				if(!opacity)opacity=obj.style.opacity*100;
				opacity+=1;
				if(obj.style.opacity > 1) obj.style.opacity = 1;
				setOpacity(obj,opacity);
				if(timer) clearTimeout(timer);
				timer = setTimeout("fadeIn('" + id + "','"+fadeInSpeed+"',"+opacity+")", fadeInSpeed);
			}else{
				obj.style.opacity=100;
				this.setOpacity(obj,100);
			}
		}
	}
	
	fadeOut = function(id,fadeInSpeed,opacity){//5 mars
		//document.getElementById;
		//fadeInSpeed = 20 (content fade-in speed (0 - 30; 0 = no fading))
		//opacity = Rien à mettre ici;
		var obj=this.getObj(id);
		if(obj){
			if(document.all) obj.style.position = 'absolute';
			if(fadeInSpeed && obj.style.opacity > 0){
				if(!opacity)opacity=(obj.style.opacity*100);
				opacity-=1;
				setOpacity(obj,opacity);
				if(timer) clearTimeout(timer);
				timer = setTimeout("fadeOut('" + id + "','"+fadeInSpeed+"',"+opacity+")", fadeInSpeed);
			}else{
				obj.style.opacity = 0;
				this.setOpacity(obj, 0);
			}
		}
	}

	setOpacity = function(obj, opacity){//5 mars
		if(obj && !document.layers){
			obj.style.opacity = opacity / 100;
			obj.style.MozOpacity = opacity / 100;
			obj.style.KhtmlOpacity = opacity / 100;
			obj.style.filter = 'alpha(opacity=' + opacity + ')';
		}
	}
	
//////////////////////////////////////////////////////////////////////////////////////////////////
//								Système															//
//////////////////////////////////////////////////////////////////////////////////////////////////
	search_navigator = function(systeme){//5 mars
		//systeme = safari, opera, msie, mozilla
		return eval("jQuery.browser."+systeme);
	}