/* ################################################# */
/* SCRIPTS COMMUNS A TOUTES LES PAGES DU BACK-OFFICE */
/* Auteur : Yann VOLEAU (Edenweb)                    */
/* ################################################# */

/*
Selection d'un onglet
*/
function selectMenu(li) {
	
	var divid = li.id.substring(3,li.id.length);
	//stockage du nom de l'onglet
	if(document.getElementById("id_onglet"))document.getElementById("id_onglet").value=li.id;
	
	//on repasse toutes les div onglets en display none
	var div_forms=document.getElementById("formulaire").getElementsByTagName("div");
	for(k=0;k<div_forms.length;k++) {
		if(div_forms[k].className=="onglet"){
			div_forms[k].style.display="none";
		}
	}
	//on passe la div de l'onglet en cours en block
	document.getElementById(divid).style.display="block";
	
	//on applique le style par défaut sur tous boutons d'onglets
	var tabLiens=document.getElementById("maintabs").getElementsByTagName("li");
	for(k=0;k<tabLiens.length;k++) {
		
		tabLiens[k].style.backgroundPosition="left top";
		tabLiens[k].getElementsByTagName("div")[0].style.backgroundPosition="right top";
		tabLiens[k].getElementsByTagName("div")[0].style.color="#000";
		tabLiens[k].getElementsByTagName("div")[0].style.fontWeight="normal";
		tabLiens[k].onmouseover=function(){
			this.style.backgroundPosition="0% -28px";
			this.getElementsByTagName("div")[0].style.backgroundPosition="100% -28px";
			this.getElementsByTagName("div")[0].style.color="#FFF";
		}
		tabLiens[k].onmouseout=function(){
			this.style.backgroundPosition="left top";
			this.getElementsByTagName("div")[0].style.backgroundPosition="right top";
			this.getElementsByTagName("div")[0].style.color="#000";
		}
		
	}
	
	//on applique le style particulier au bouton de l'onglet en cours
	li.style.backgroundPosition="0% -28px";
	li.getElementsByTagName("div")[0].style.backgroundPosition="100% -28px";
	li.getElementsByTagName("div")[0].style.color="#FFF";
	li.getElementsByTagName("div")[0].style.fontWeight="bold";
	li.onmouseout=function(){};	
	
	
}



/*
Vérification du login et mot de passe
*/
function check_login(){
	if (document.connexion.login.value==""){
		alert('Merci de saisir votre identifiant.');
		return false;
	}else if (document.connexion.password.value==""){
		alert('Merci de saisir votre mot de passe.');
		return false;
	}else{
		startPatienterTotal();
		return true;
	}
}

/*
Renvoi la date du jour
*/
function getDateJour(){
	return document.getElementById('date_du_jour').value;
}

/*
Renvoi le nom de l'utilisateur
*/
function getUser(){
	return document.getElementById('nom_utilisateur').value;
}

/*
Alerte sur la validité d'une date
*/
function verifDate(date){

	if (date.value.length==8 && isNaN(date.value)==false){
		date.value = date.value.substring(0,2)+"/"+date.value.substring(2,4)+"/"+date.value.substring(4,8);
	}

	if (erreurDate(date)==true){
		alert('Merci d\'entrer une date valide au format JJ/MM/AAAA');
		date.value='';
	}
}

/*
Vérification de la validité d'une date
*/
function erreurDate(date){

	var mot=date.value;
	var erreur=false;
	if (mot.length==0)return false;
	if (mot.length!=10){
		erreur=true;
	}else{
		motjour=mot.substring(0,2);
		motmois=mot.substring(3,5);
		motan=mot.substring(6,10);
		motsep=mot.charAt(2)+mot.charAt(5);
		
		if (isNaN(motjour+motmois+motan)|| motan>3000 ||motan<1900 || motsep!="//"){
			erreur=true;
		}else {
			choix="";
			if (motan-(parseInt(motan/4)*4)==0) choix="bi";
			if (motan-(parseInt(motan/4)*4)==0&&motan-(parseInt(motan/100)*100)==0) choix="";
			if (motan-(parseInt(motan/4)*4)==0&&motan-(parseInt(motan/400)*400)==0)	choix="bi";
			
			switch (motmois){
				case "01":
					if(motjour<1 || motjour>31)erreur=true;
					break;
				case"02":
					if(choix=="bi"){
						if(motjour<1 || motjour>29)
							erreur=true;
					}else{
						if(motjour<1 || motjour>28)
							erreur=true;
					}
					break;
				case "03":
					if(motjour<1 || motjour>31)erreur=true;
					break;
				case "04":
					if(motjour<1 || motjour>30)erreur=true;
					break;
				case "05":
					if(motjour<1 || motjour>31)erreur=true;
					break;
				case "06":
					if(motjour<1 || motjour>30)erreur=true;
					break;
				case "07":
					if(motjour<1 || motjour>31)erreur=true;
					break;
				case "08":
					if(motjour<1 || motjour>31)erreur=true;
					break;
				case "09":
					if(motjour<1 || motjour>30)erreur=true;
					break;
				case "10":
					if(motjour<1 || motjour>31)erreur=true;
					break;
				case "11":
					if(motjour<1 || motjour>30)erreur=true;
					break;
				case "12":
					if(motjour<1 || motjour>31)erreur=true;
					break;
				default:
					erreur=true;
			}
		}
	}
	
	return erreur;

}

/*
Recopie du titre de l'objet en cours dans le bandeau bleu du masque de saisie
*/
function recopieNomObjet(text){
	if (document.getElementById('info_nom_objet_numero')){
		text = document.getElementById('info_nom_objet_numero').value + text;
	}
	document.getElementById('info_nom_objet').innerHTML=text;
}

/*
Stockage de l'action à effectuer sur le formulaire et validation du formulaire
*/
function actionSubmit(action,form){

	form.action_submit.value=action;
	form.submit();

}

/*
Met de majuscule
*/
function thisToUpperCase(input){
	
	input.value = input.value.toUpperCase();
}

/*
Met la première lettre en majuscule (pour chaque mot)
*/
function thisFirstToUpperCase(input){
	
	input.value=input.value.toLowerCase();
	var text=input.value;
	text=thisSplitFisrtToUpperCase(text," ");
	text=thisSplitFisrtToUpperCase(text,"-");
	input.value=text;
	
}

/*
Met la première lettre en majuscule en fonction d'un délimiteur
*/
function thisSplitFisrtToUpperCase(text,splitter){
	
	var mots=text.split(splitter);
	var textChange="";
	for (var j=0 ; j<mots.length ; j++){
		var first_char = mots[j].substring(0,1);
		first_char = first_char.toUpperCase();
		mots[j] = first_char + mots[j].substring(1,mots[j].length);
		if (j!=mots.length-1){
			textChange += mots[j]+splitter;
		}else{
			textChange += mots[j];
		}
	}
	
	return textChange;
}

/*
Alerte sur l'annulation de l'action en cours (au clic dans le menu)
*/
function verifAction(lien,action){
	var action_en_cours=document.form_menu.action_en_cours.value;
	
	if (action_en_cours==''){
		document.form_menu.lien.value = lien;
		document.form_menu.action_en_cours.value = action;
		document.form_menu.submit();
	}else{
		if (confirm('Souhaitez-vous vraiment annuler '+action_en_cours+' ?')){
			document.form_menu.action_en_cours.value='';
			verifAction(lien,action);
		}
	}
}

/*
Alerte sur le format d'une adresse mail
*/
function verifMail(input){
	if (erreurMail(input.value)==true){
		alert('L\'adresse e-mail est incorrecte.');
		input.value="";
		input.focus();
	}
}

/*
Vérifiaction du format d'une adresse mail
*/
function erreurMail(mail){
	if (mail.length==0)return false;
	var erreur = true;
	for (var j=1 ; j<(mail.length) ; j++) {
		if (mail.charAt(j)=='@') {
			if (j<(mail.length-4)){
				for (var k=j ; k<(mail.length-2) ; k++) {
					if (mail.charAt(k)=='.') erreur = false;
				}
			}
		}
	}
	if (mail.indexOf(" ") != -1)erreur=true;
	return erreur ;
}

/*
Vérification du format numérique avec x chiffres avant la virgule et y après la virgule
*/
function verifNumerique(input,avant,apres){
	var erreur = false;
	var message = '';
	if (isNaN(input.value)==true || input.value.search(/ /) != -1){
		message += 'Ce champ doit être au format numérique.\n';
		erreur = true;
	}
	if (apres == 0 && input.value.indexOf('.') != -1){
		message += 'Les décimales ne sont pas autorisées.\n';
		erreur = true;
	}
	if (input.value.length > avant && input.value.indexOf('.') == -1){
		message += 'Trop de chiffres (maximum : '+avant+')\n';
		erreur = true;
	}
	if (apres > 0 && input.value.indexOf('.') != -1){
		var vals = input.value.split('.');
		if (vals[0].length > avant){
			message += 'Trop de chiffres avant la virgule (maximum : '+avant+')\n';
			erreur = true;
		}
		if (vals[1].length > apres){
			message += 'Trop de chiffres après la virgule (maximum : '+apres+')\n';
			erreur = true;
		}
	}
	if (input.value.indexOf('-') != -1){
		message += 'Les nombres négatifs ne sont pas autorisés\n';
		erreur = true;
	}
	if (erreur==true){
		message += 'Taille maximum du nombre : ';
		
		for (var i = 0 ; i < avant ; i++){
			message += 'x';
		}
		if (apres > 0)message += '.';
		for (var i = 0 ; i < apres ; i++){
			message += 'x';
		}
				
		input.value='';
		alert(message);
		input.focus();
	}
	return erreur;
}

/*
Vérification du format horaire minute
*/
function verifNumeriqueMin(input,avant,apres){
	if (verifNumerique(input,avant,apres) == false){
		if (input.value > 59){
			alert('Merci de saisir un nombre inférieur à 60');
			input.value='';
		}
	}
}

/*
Fonction séparant les jours, les mois et les années dans une date de type "22/05/1981" et renvoyant le tout dans un tableau de taille 3
*/
function DecomposeDate(LeParam1){
	LeRetour = new Array(3);
	LeJour="";
	LeMois="";
	LeAnnee="";

	// Extraction du jour
	i=0;
	while((LeParam1.charAt(i)!="/")&&(i<10)){
		LeJour+=LeParam1.charAt(i);
		i++;
	}
	if(LeJour.charAt(0)=="0"){
		LeJour=LeJour.charAt(1);
	}
	LeParam1=LeParam1.substring(i+1,LeParam1.length);

	// Extraction du mois
	i=0;
	while((LeParam1.charAt(i)!="/")&&(i<10)){
		LeMois+=LeParam1.charAt(i);
		i++;
	}
	if(LeMois.charAt(0)=="0"){
		LeMois=LeMois.charAt(1);
	}
	LeParam1=LeParam1.substring(i+1,LeParam1.length);

	// Extraction de l'année
	LeAnnee=LeParam1;
	LeRetour[0]=LeJour;
	LeRetour[1]=LeMois;
	LeRetour[2]=LeAnnee;
	return LeRetour;
}

/*
Fonction renvoyant une date en format anglais avec le séparateur choisi "02/03/1981" -> "1981-3-2"
Le premier paramètre est la date a convertir, le second est le caractère de séparation choisi
*/
function DateAnglaise(LeParam1,LeParam2){
	LaDate = new Array(3);
	LaDate = DecomposeDate(LeParam1);
	LeRetour = LaDate[2]+LeParam2+LaDate[1]+LeParam2+LaDate[0];
	return LeRetour;
}

/*
Fonction comparant 2 dates au format jj/mm/aaaa et renvoyant 1 si la première est inférieure, sinon 0
*/
function ComparerDates(LeParam1,LeParam2){
	var LeParam1 = DateAnglaise(LeParam1,"/");// Ne pas oublier d'utiliser cette fonction
	//pour convertir en date anglaise, sinon le 05/07/2003 sera compris "7 mai 2003" par JavaScript

	var LeParam2 = DateAnglaise(LeParam2,"/");
	LeParam1 = Date.parse(LeParam1);
	LeParam2 = Date.parse(LeParam2);

	if (LeParam1 <= LeParam2){
		return 1;
	} else {
		return 0;
	}
}

/*
Confirmation du retour à la recherche
*/
function retourRecherche(){
	if (confirm('Etes-vous certain de vouloir retourner au résultat de la recherche sans enregistrer vos modifications?')==true){
		actionSubmit('retour_recherche',document.form_saisie);
	}
}

/*
Retour à l'accueil lorsqu'on désire quitter une saisie en création
*/
function quitterSaisie(){
	verifAction('/login.jsp','');
}

/*
Stockage de l'image à changer pour le tri puis validation du formulaire pour tri
*/
function trier(action,form,id_image){
	document.getElementById('image_tri').value=id_image;
	actionSubmit(action,form);
}

/*
Séléction de l'image à afficher pour le tri
*/
function imageTri(image){
	if (image){
		if (image.src.search(/\/img\/up.gif/) != -1)image.src='/img/up_selected.gif';
		if (image.src.search(/\/img\/down.gif/) != -1)image.src='/img/down_selected.gif';
	}
}

/*
Vérification du formulaire de changement de mot de passe
*/
function changePassword(){
	if (document.form_saisie_pass.old_password.value=='' || 
		document.form_saisie_pass.new_password1.value=='' || 
		document.form_saisie_pass.new_password2.value==''){
		alert('Merci de remplir tous les champs');
	}else{
		if (document.form_saisie_pass.new_password1.value != document.form_saisie_pass.new_password2.value){
			alert('Les nouveaux mots de passe ne sont pas identiques');
		}else{
			if (document.form_saisie_pass.new_password1.value.length < 6){
				alert('Le mot de passe doit contenir au moins 6 caractères');
			}else{
				actionSubmit('changer_password',document.form_saisie_pass);
			}
		}
	}
}

/*
Vérification du formulaire d'oubli de mot de passe
*/
function sendPassword(){
	if (document.form_oubli_pass.login.value==''){
		alert("Merci de renseigner votre nom d'utilisateur");
	}else{
		startPatienterTotal();
		actionSubmit('send_password',document.form_oubli_pass);
	}
}

function showSendPassword(){
	var passwin=dhtmlwindow.open("passbox", "iframe", "/renew_pass.jsp", "Oubli de mot de passe", "width=500px,height=230px,resize=0,scrolling=0,center=1", "recal");
}

/*
Lancement de la pop-up de changement de mot de passe
*/
function showChangePassword(){
	var passwin=dhtmlwindow.open("passbox", "iframe", "/change_pass.jsp", "Changement de mot de passe", "width=700px,height=180px,resize=0,scrolling=0,center=1", "recal");
}

/*
Alerte sur le format d'une URL
*/
function checkURL(input){
	if (isValidURL(input.value) == false && input.value.length != 0){
		alert("Format de d'adresse Internet incorrect");
		input.value="";
	}
}

/*
Vérification du format d'une URL
*/
function isValidURL(url){
    var RegExp = /^(([\w]+:)?\/\/)?(([\d\w]|%[a-fA-f\d]{2,2})+(:([\d\w]|%[a-fA-f\d]{2,2})+)?@)?([\d\w][-\d\w]{0,253}[\d\w]\.)+[\w]{2,4}(:[\d]+)?(\/([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)*(\?(&?([-+_~.\d\w]|%[a-fA-f\d]{2,2})=?)*)?(#([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)?$/;
    if(RegExp.test(url)){
        return true;
    }else{
        return false;
    }
} 

/*
Vérification de la longueur max d'un champ texte
*/
function checkMaxLength(input,max){
	if (input.value.length > max){
		alert('Ce champ ne doit pas dépasser '+max+' caractères');
		input.value = input.value.substring(0,max);
		input.focus();
	}
}

/*
Fonctions de trim
*/
var regExpBeginning = /^\s+/;
var regExpEnd       = /\s+$/;
// Supprime les espaces inutiles en début et fin de la chaîne passée en paramètre.
function trim(aString) {
	return aString.replace(regExpBeginning, "").replace(regExpEnd, "");
}
// Supprime les espaces inutiles en début de la chaîne passée en paramètre.
function ltrim(aString) {
	return aString.replace(regExpBeginning, "");
}
// Supprime les espaces inutiles en fin de la chaîne passée en paramètre.
function rtrim(aString) {
	return aString.replace(regExpEnd, "");
} 

/*
Application d'un style aux input disabled (pour IE car on ne voit pas la différence entre enabled et disabled)
*/
function checkDisabled(){
	var inputs = document.getElementsByTagName('input');
	
	for (var i=0 ; i<inputs.length ; i++){
		if (inputs[i].type=="text"){
			if (inputs[i].disabled==true){
				inputs[i].style.backgroundColor="#ccc";
				inputs[i].style.color="black";
			}else{
				inputs[i].style.backgroundColor="#fff";
				inputs[i].style.color="black";
			}
		}
	}
	
}

/*
Vérification si une pop up est ouverte ou non
*/
function verifPopOpen(){
	var isOpened = false;
	var divs = document.getElementById('dhtmlwindowholder').getElementsByTagName('div');
	for (var i=0 ; i<divs.length ; i++){
		if (divs[i].className=="dhtmlwindow" && divs[i].style.display=="block"){
			isOpened = true;
		}
	}
	if (isOpened == true){
		hideSelects();
	}else{
		showSelects();
	}
}

/*
Cache les balises select (elles passent au dessus des pop ups sous IE6)
*/
function hideSelects(){
	
	if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){ //test for MSIE x.x;
		 var ieversion=new Number(RegExp.$1) // capture x.x portion and store as a number
		 if (ieversion<7){		
			var selects = document.getElementsByTagName('select');
			for (var i = 0; i < selects.length; i++) {
				selects[i].style.visibility = "hidden";
			}
		}
	}
}

/*
Rend visible les balises select
*/
function showSelects(){
	if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){ //test for MSIE x.x;
		 var ieversion=new Number(RegExp.$1) // capture x.x portion and store as a number
		 if (ieversion<7){		
			var selects = document.getElementsByTagName('select');
			for (var i = 0; i < selects.length; i++) {
				selects[i].style.visibility = "visible";
			}
		}
	}
//http://www.javascriptkit.com/javatutors/navigator.shtml
}

/*
Suppression de la ville d'une adresse
*/
function supprCpVille(){
	document.getElementById('hexa_id').value='-1';
	document.getElementById('adr_cp_ville').value='';
	document.getElementById('nb_adr_cp_ville').value='0';
}

/*
Lance une action à l'appui sur la touche "Entrée"
*/
function checkSubmitKey(action){
	if (window.event.keyCode == 13)
		eval(action);
}

/*
Vérifiaction du format téléphonique de la france
*/
function checkPhone(input){
	if (input.value != ''){
		var regExp = /(^[0-9]{2}( [0-9]{2}){4}$)|(^[0-9]{10}$)/g;
		if (matchRegularExpression(input.value, regExp) == false) {
			alert('Format de téléphone incorrect\nExemple : 0123456789 ou 01 23 45 67 89');
			input.value = '';
		}else{
			var regExp2 = /^[0-9]{10}$/g;
			if (matchRegularExpression(input.value, regExp2) == true){
				input.value = input.value.substring(0,2)+" "+input.value.substring(2,4)+" "+input.value.substring(4,6)+" "+input.value.substring(6,8)+" "+input.value.substring(8);
			}
		}
	}
}

/*
Vérifie qu'une valeur correspond à une expression régulière
*/
function matchRegularExpression(valeur, regularExpression){
	var resultat = valeur.match(regularExpression);
	if(resultat!=null && resultat.length==1) return true;
	else return false;
}

/*
Gestion de l'image pour l'affichage des commentaires (vide ou pleine)
*/
function checkCommentaire(ta){
	var img = ta.parentNode.parentNode.parentNode.getElementsByTagName("img")[1];
	if (ta.value == ""){
		img.setAttribute("src","/img/commentaire_vide.gif");
	}else{
		img.setAttribute("src","/img/commentaire.gif");
	}
}

/*
Application d'une classe à un élément
*/
function applyClass(element,classe){

	element.setAttribute("className",classe);
	element.setAttribute("class",classe);

}

/*
Impression d'un formualire avec onglets
*/
function imprimer(onglet){

	var id_onglet = onglet.substring(3,onglet.length);
	
	var divs = document.getElementById('bloc_centre').getElementsByTagName('div');
	var inputs = document.getElementById('bloc_centre').getElementsByTagName('input');
	
	//on rend visible tous les onglets et les commentaires
	for (var i=0 ; i<divs.length ; i++){
		if (divs[i].className=='onglet')divs[i].style.display='block';
		if (divs[i].className.search(/commentaire_table_triable/)!= -1 && divs[i].innerHTML.length > 0)	showHideCommentInSortableTable(divs[i].id);
		if (divs[i].className.search(/textarea_commentaire/)!= -1 && divs[i].innerHTML.length > 0)divs[i].style.display='block';
	}
	//on cache tous les boutons
	for (var i=0 ; i<inputs.length ; i++){
		if (inputs[i].type=='button')inputs[i].style.visibility = 'hidden';
	}
	
	//on lance l'impression
	window.print();
	
	//1 sec après on rétablit l'affichage
	window.setTimeout("retablirImpression('"+id_onglet+"')",1000);
	
	
}

/*
Retablissement de l'affichage tel qu'il était avant l'impression
*/
function retablirImpression(id_onglet){

	var divs = document.getElementById('bloc_centre').getElementsByTagName('div');
	var inputs = document.getElementById('bloc_centre').getElementsByTagName('input');
	
	//on cache tous les onglets
	for (var i=0 ; i<divs.length ; i++){
		if (divs[i].className=='onglet')divs[i].style.display='none';
		if (divs[i].className.search(/commentaire_table_triable/)!= -1 && divs[i].innerHTML.length > 0) showHideCommentInSortableTable(divs[i].id);
		if (divs[i].className.search(/textarea_commentaire/)!= -1 && divs[i].innerHTML.length > 0)divs[i].style.display='none';
	}
	//on raffiche tous les boutons
	for (var i=0 ; i<inputs.length ; i++){
		if (inputs[i].type=='button')inputs[i].style.visibility = 'visible';
	}
	//on raffiche l'onglet en cours
	if (document.getElementById(id_onglet)) document.getElementById(id_onglet).style.display='block';
	
}

/*
Fonction pour cocher ou décocher tous les éléments d'une liste de valeurs
*/
function cocherListe(button,form){
	var checked;
	var chkbox = form.getElementsByTagName('input');
	if (chkbox.length > 0){
		if (button.value == 'Tout cocher'){
			button.value = 'Tout décocher';
			checked = true;
		}else{
				button.value = 'Tout cocher';
				checked = false;
		}
		
		for (var i = 0 ; i < chkbox.length ; i++){
			if (chkbox[i].type=='checkbox')chkbox[i].checked = checked;
		}
	}
}

/*
Remet à zéro la recherche d'affinage pour les listes de valeur
*/
function razAffinage(form,input,button){
	form.innerHTML='';
	if (button) button.value='Tout cocher';
	if (document.getElementById('div_nb_resultat_listing')) document.getElementById('div_nb_resultat_listing').innerHTML = '';
	input.value='';
	input.focus();
}

/*
Grisage de l'écran avec message d'attente
*/
function startPatienterTotal(){
	if (!document.getElementById('patienter_rech')){
		var div = document.createElement('div');
		div.setAttribute("class","patienter_rech");
		div.setAttribute("className","patienter_rech");
		div.setAttribute("id","patienter_rech");
		var img = document.createElement('img');
		img.setAttribute("src","/img/espaceur.gif");
		img.setAttribute("class","centpourcent");
		img.setAttribute("className","centpourcent");
		div.appendChild(img);
		document.getElementById("bloc_corps").appendChild(div);
	}
	document.getElementById('patienter_rech').style.display="block";
	
	startPatienterNonStop();
}

/*
Message d'attente (ne s'arrete pas automatiquement)
*/
function startPatienterNonStop(){
	
	if (!document.getElementById('patienter')){
		var div = document.createElement('div');
		div.setAttribute("class","patienter");
		div.setAttribute("className","patienter");
		div.setAttribute("id","patienter");
		var img = document.createElement("img");
		img.setAttribute("src","/img/patienter.gif");
		div.appendChild(img);
		document.getElementById("bloc_corps").appendChild(div);
	}
	document.getElementById('patienter').style.display="block";
}

/*
Dégrisage de l'écran
*/
function stopPatienterTotal(){
	if (document.getElementById('patienter_rech'))document.getElementById('patienter_rech').style.display="none";
	stopPatienter();
}

var num_file_attente = 0;

/*
Message d'attente (s'arrête au bout de 30 secondes)
*/
function startPatienter(){
	
	num_file_attente++;
	
	if (!document.getElementById('patienter')){
		var div = document.createElement('div');
		div.setAttribute("class","patienter");
		div.setAttribute("className","patienter");
		div.setAttribute("id","patienter");
		var img = document.createElement("img");
		img.setAttribute("src","/img/patienter.gif");
		div.appendChild(img);
		document.getElementById("bloc_corps").appendChild(div);
	}
	document.getElementById('patienter').style.display="block";
	setTimeout("verifPatienter("+num_file_attente+")",30000);
}

/*
Arret du message d'attente
*/
function stopPatienter(){
	if (document.getElementById('patienter'))document.getElementById('patienter').style.display="none";
}

/*
Arret du message d'attente si la div est encore visible au bout de 30 secondes (plantage probable)
*/
function verifPatienter(num){
	if (document.getElementById('patienter').style.display=="block" && num == num_file_attente){
		stopPatienter();
		//alert("ERREUR : Délai d'attente dépassé");
	}
}

/*
Vérification d'un nombre de caractère minimal pour la recherche d'affinage dans les listes de valeurs
*/
function checkAffinage(input,name,type,commentaire){
	var nb_mini=2;
	if (input.value.length<nb_mini){
		alert('Votre recherche doit porter sur au moins '+nb_mini+' caractères');
	}else{
		afficheListing(name,type,commentaire);
	}
}

/*
Gestion de l'affichage des éléments enfants dans une arborescence de liste de valeurs
*/
function showHideChildrenList(classToShowHide,imag,name){
	
	var to_display = 'block';
	if (imag.src.search(/\/img\/bt_plus.gif/) != -1){
		imag.setAttribute("src","/img/bt_moins.gif");
	}else{
		imag.setAttribute("src","/img/bt_plus.gif");
		to_display = 'none';
	}
	var divs = document.getElementById('arborescence_'+name).getElementsByTagName('div');
	for (var i=0 ; i<divs.length ; i++){
		if (divs[i].className==classToShowHide)divs[i].style.display=to_display;
	}
}

//affichage ajax pop-up des infos sur un diplome
function showInfosCertif(id_diplome,titre){
	var divwin_infos_certif = dhtmlwindow.open("divbox_infos_certif", "ajax", "/ajax?action=lierInfosCertifInfo&ids="+id_diplome, titre, "width=700px,height=350px,resize=1,scrolling=1,center=1");
	divwin_infos_certif.style.zIndex+=10;
}

//valeur par défaut des champs d'URL au focus
function defaultHttpFocus(input){
	if (input.value=="") input.value="http://";
}

//permet de sauvegarder la position de l'ascenceur du resultat de recherche
function saveScroll() {
   document.getElementById('scroll').value = document.getElementById('ascenceur_resultat').scrollTop; 
}

//valeur par défaut des champs d'URL au blur
function defaultHttpBlur(input){
	if (input.value=="http://")	input.value="";
}

//pop-up d'alerte
function alerteMessage(message){
	
	var num=Math.random()*10000000000000000000;
		
	while (message.search(/\n/) != -1){
		message = message.replace(/\n/,"<br/>");
	}		
	
	while (message.search(/ - /) != -1){
		message = message.replace(/ - /,"&nbsp;-&nbsp;");
	}
	
	var div = document.createElement("div");
	div.setAttribute("id","display_message"+num);
	div.setAttribute("class","display_message");
	div.setAttribute("className","display_message");
	
		
	var div2 = document.createElement("div");
	div2.setAttribute("id","display_message_"+num);
	div2.setAttribute("class","display_message_");
	div2.setAttribute("className","display_message_");
	
	var div3 = document.createElement("div");
	div3.setAttribute("class","bouton_listing");
	div3.setAttribute("className","bouton_listing");
	
	var input = document.createElement("input");
	input.setAttribute("type","button");
	input.setAttribute("value","Fermer");
	input.setAttribute("onClick","document.getElementById('divwin_message"+num+"').style.display='none';showSelects();");
	//input.value="Fermer";
	//input.onClick=function(){divwin_message.hide();};
	
	div3.appendChild(input);
	
	div2.innerHTML=message;
	
	div.appendChild(div2);
	div.appendChild(div3);
	
	document.body.appendChild(div);
	
	eval("var divwin_message"+num+" = dhtmlwindow.open('divwin_message"+num+"', 'div', 'display_message"+num+"', 'Message d\\'alerte', 'width=600px,height="+document.getElementById('display_message_'+num).offsetHeight+"px,resize=1,scrolling=1,center=1');");
}

//function d'ajout d'une fonction au window.onlaod
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}


function afficherMasquerBloc(id){
	
	if (document.getElementById(id)){
		var bloc = document.getElementById(id);
		if (bloc.style.display=='block') bloc.style.display='none';
		else bloc.style.display='block';
	}
	
}

function mailToOffre(){
	
	document.location.href="mailto:nlavolo@errefom.info?cc=offre@errefom.info&subject=Création de compte sur la saisie à distance&body=Bonjour,%0A%0AMerci de me créer un compte pour accéder à la saisie de l'offre à distance.%0A%0ANom, prénom : %0AStructure : %0AFonction : %0ATéléphone : %0AE-mail : %0A%0ACordialement";	

}

function openHelp(div_id){
	
	var divwin_help = dhtmlwindow.open('divwin_help', 'div', div_id, 'Aide spécifique', 'width=500px,height=300px,resize=1,scrolling=1,top=20px,left=20px;');
	document.getElementById('divwin_help').style.zIndex+=2;
}


/* Vérification d'une case cochée avant suppression d'une ligne de résultat */
function supprLignesResult(action,form,table){
	
	if (verifInputsChecked(1)==true){
		actionSubmit(action,form);
	}else{
		alert('Merci de séléctionner au moins une ligne');
	}
}


/*function deconnexion(){
	if (window.opener){
		if (window.opener.objChild){
			window.opener.location.href='/login.jsp';
			window.opener.objChild.close();
		}
	}
}*/
