<!--

//--------------------------------
// Confirmation avant suppression d'un élément
//--------------------------------
function confirm_suppr_1(message, url)
{
	var poursuivre = confirm(message);
	if (!poursuivre)
		return;
	
	if (!url) url = document.URL;
	document.form1.gen_action_mode.value = "SUPPRIMER";
	document.form1.action = url;
	document.form1.submit();
	return true;
}        

//--------------------------------
// Confirmation avant suppression de plusieurs éléments
//--------------------------------
function confirm_suppr_2(url, msg1, msg2, msg3)
{
	fm = document.form1;
	if (!msg1) msg1 = "Vous n'avez sélectionné aucun élément.";
	if (!msg2) msg2 = "Souhaitez-vous vraiment supprimer la ligne sélectionnée ?";
	if (!msg3) msg3 = "Souhaitez-vous vraiment supprimer les lignes sélectionnées ?";
		
// y-a-t-il des éléments sélectionnés ?		
	n = (fm.elements.length)-1;
	var nb;
	nb=0;
	for(i=0;i<=n;i++)	{
		if (fm.elements[i].id == "supprimer" && fm.elements[i].checked)	{
			nb = nb+1;
		}
	}
	if (nb==0)	{
		alert(msg1);
		return ;
	} else if (nb==1)	{
		msg = msg2;
	} else	{
		msg = msg3;
	}
   var poursuivre = confirm(msg);
	if (!poursuivre)
		return;
	
	if (!url) url = document.URL;
	document.form1.gen_action_mode.value = "SUPPRIMER";
	document.form1.action = url;
	document.form1.submit();
	return true;
}        

//--------------------------------
// Post d'un formulaire de page Update
//--------------------------------
function f_submit_mod2 (gen_action_mode, type_action) 
{
	// Vérification JVS validité des saisies
	if (!checkForm(document.form1))
		return;
	
	document.form1.gen_action_mode.value = gen_action_mode;
	document.form1.submit();
	return true;
}


//--------------------------------
// Post d'un formulaire de page Liste
//--------------------------------
function f_submit_liste_2 (url, gen_action_mode, id_actif, gen_param_1, gen_param_2, param_3 , param_4) 
{
	// redirection  par défaut
	if (!url) url = document.URL;
	document.form1.gen_action_mode.value = gen_action_mode;
	document.form1.id_actif.value = id_actif;
	document.form1.gen_param_1.value = gen_param_1;
	if (gen_param_2) document.form1.gen_param_2.value = gen_param_2;
	document.form1.action = url;
	document.form1.submit();
	return true;
}


//--------------------------------
// Controle de validité des saisies
// obj : objet de formulaire
// txt : txt à afficher dans la boite d'alerte
// Retour : TRUE si contrôle OK
//--------------------------------
function check_standard(obj, txt) 
{
	if ( ! f_ltrim(obj.value) ){
		alert(txt);
		obj.focus();
		return false;
	}
	
	return true;
}


// Autorise les valeurs zéro
function check_standard_null(obj, txt) 
{
	if ( ! f_ltrim_null(obj.value) ){
		alert(txt);
		obj.focus();
		return false;
	}
	return true;
}

function check_files(obj, txt, param_1) 
{
if (!f_ltrim(param_1) && ! f_ltrim(obj.value) ){
		alert(txt);
		obj.focus();
		return false;
	}
	
	return true;
}


// vérifie un intervale
function check_interval(obj, txt, val_min, val_max) 
{
 	if (f_ltrim(obj.value) && (obj.value < val_min || obj.value > val_max) ){
		alert(txt);
		obj.focus()
		return false
	}
	else
		return true;
}

function check_integer(obj, txt) 
{
	reNumeric = /^[0-9\- ]+$/
 	if (f_ltrim(obj.value) && !(reNumeric.test(obj.value))){
		alert(txt);
		obj.focus()
		return false
	}
	else
		return true;
}
function check_float(obj, txt) 
{
 	if ( f_ltrim(obj.value) && isNaN(obj.value) ){
		alert(txt);
		obj.focus()
		return false
	}
	else
		return true;
}

function check_email(obj, txt) 
{
	// test validité Mot de passe
	reEmail = /^[\w\.\-\_]+@[\w\.-]+\.[a-zA-Z]+$/
 	if (f_ltrim(obj.value) && !(reEmail.test(obj.value))){
		alert(txt);
		obj.focus()
		return false
	}
	else
		return true;
}

function check_login(obj, txt) 
{
	// test validité Login
	var reID = new RegExp("^[a-zA-Z0-9]{4,15}$","g");
	if (f_ltrim(obj.value) && !(reID.test(obj.value))){
		alert(txt);
		obj.focus()
		return false
	}
	else
		return true;
}
function check_pwd(obj, txt) 
{
	// test validité mot de passe
	var rePwd = new RegExp("^[a-zA-Z0-9\$]{5,15}$","g");
	if (f_ltrim(obj.value) && !(rePwd.test(obj.value))){
		alert(txt);
		obj.focus()
		return false
	}
	else
		return true;
}


//--------------------------------
// Post d'un formulaire de page Update
//--------------------------------
function f_submit_mod (url, gen_action_mode, action, param_1) 
{
	// Suppression d'un fichier
	if (action ==5)
	{
		document.form1.gen_action_mode.value = gen_action_mode;
		document.form1.fl_suppr_string.value = param_1;
	} else if (action == 1 || action == 2 || action == 3)
	{
		// Vérification JVS validité des saisies
		if (!checkForm(document.form1))
			return;

		document.form1.gen_action_mode.value = gen_action_mode;
		document.form1.process_action.value = param_1;
	}
	// Annulation
	else
	{
		document.form1.gen_action_mode.value = '';
		document.form1.process_action.value = '';
	}

	// redirection  par défaut
	if (!url) url = document.URL;

	document.form1.action = url;
	document.form1.submit();
	return true;
}

//--------------------------------
// Post d'un formulaire de page Liste
//--------------------------------
function f_submit_liste (url, action, param_1, param_2, param_3 , param_4) 
{
	// redirection  par défaut
	if (!url) url = document.URL;

	// Tri sur une colonne
	if (action==5)
	{
		document.form1.gen_tri.value = param_1;
	}
	// Changement de page
	else if (action==6)
	{
		document.form1.gen_deb.value = param_1;
	}
	// Suppression d'enregistrements
	else if (action==7)
	{
		// Vérification JVS validité des saisies
		if (!confirm_suppr(document.form1))
			return;
		else
			document.form1.gen_action_mode.value = action;
	}
	// Publication d'un enregistrement
	else if (action==8)
	{
		document.form1.gen_param_2.value = param_2;
		document.form1.id_actif.value = param_1;
		document.form1.gen_action_mode.value = action;
	}
	// Modification du classement
	else if (action==9)
	{
		chaine = param_2 + '.' + param_3;
		document.form1.gen_param_2.value = chaine;
		document.form1.id_actif.value = param_1;
		document.form1.gen_action_mode.value = action;
	}
	// Acces à la fiche détail
	else if (action==10)
	{
		if (!param_1)
		{
			retour = search_selected_item(document.form1);
			if (!retour)
				return;
		}
		else
			retour = param_1;
			
		document.form1.gen_action_mode.value = action;
		document.form1.id_actif.value = retour;
	}
	// Suppression d'un enregistrement
	else if (action==11)
	{
		var poursuivre = confirm(param_2);
		if (!poursuivre)
			return;
		else
		{
			document.form1.gen_action_mode.value = action;
			document.form1.gen_param_2.value = param_1;
		}
	}
	// Suppression de tous les enregistrements correspondant à la recherche active
	else if (action==21)
	{
		msg = "Souhaitez-vous vraiment supprimer tous les enregistrements correspondant à la recherche active ?";
		var poursuivre = confirm(msg);
		if (!poursuivre)
			return;
		else
			document.form1.gen_action_mode.value = action;
	}
	// Masquer/Afficher le panneau de recherche
	else if (action==22)
	{
		document.form1.gen_action_mode.value = action;
		document.form1.gen_param_2.value = param_1;
	}
	// Suppression d'un enregistrement
	else if (action==23)
	{
		if (param_2) 
			msg = param_2;
		else
			msg = "Souhaitez-vous vraiment supprimer l'enregistrement sélectionné ?";
		var poursuivre = confirm(msg);
		if (!poursuivre)
			return;
		else
		{
			document.form1.gen_param_2.value = param_3;
			document.form1.id_actif.value = param_1;
			document.form1.gen_action_mode.value = action;
		}
	}

	// Basculer l'affichage Liste / Arborescent
	else if (action==30)
	{
		document.form1.gen_action_mode.value = action;
		document.form1.gen_param_2.value = param_1;
	}

	// Ajout
	else if (action==1)
	{
		document.form1.gen_action_mode.value = action;
		document.form1.id_actif.value = param_1;
	}
	// Modification
	else if (action ==2)
	{
		if (!param_1)
		{
			retour = search_selected_item(document.form1);
			if (!retour)
				return;
		}
		else
			retour = param_1;
			
		document.form1.gen_action_mode.value = action;
		document.form1.id_actif.value = retour;
	}
	else
	{
		alert ("cette action  n'est pas défini : " + action);
	}
	
	document.form1.action = url;
	document.form1.submit();
	return true;
}


//--------------------------------
// Suppression des espaces et retours chariot en debut d'une chaîne 
//--------------------------------
function f_ltrim(chaine) 
{ 
	if ((chaine.length>0) && (chaine!=null)) 
	{ 
		while ((chaine.substring(0,1) == ' ') || (chaine.substring(0,1) == '\n') || (chaine.substring(0,1) == '\r'))
			chaine = chaine.substring(1,chaine.length);
//		return(chaine);
	} 
	if (chaine =='0') chaine =''; 
	return(chaine);
} 

//--------------------------------
// Suppression des espaces et retours chariot en debut d'une chaîne - autorise la valeur zéro
//--------------------------------
function f_ltrim_null(chaine) 
{ 
	if ((chaine.length>0) && (chaine!=null)) 
	{ 
		while ((chaine.substring(0,1) == ' ') || (chaine.substring(0,1) == '\n') || (chaine.substring(0,1) == '\r'))
			chaine = chaine.substring(1,chaine.length);
//		return(chaine);
	} 
	return(chaine);
} 

//--------------------------------
// Recherche visible/hidden
// flag : 1=Afficher ; 2=Masquer
// visible_by_default : 1=visible par défaut
function f_search_display(flag, visible_by_default)
{
	if (flag==1 || (flag!=2 && visible_by_default==1))
		document.getElementById("search_simple").style.display = "block";
	else 
		document.getElementById("search_simple").style.display = "none";
}

//--------------------------------
// Validation de la recherche : submit de la page
function fValiderRecherche(obj)
{
	obj.submit();
	return true;
}

//--------------------------------
// Efface les critères de recherche
// Params :
//	fm : formulaire de recherche
//	b_submit : 1 si on soumet le formulaire vide (affichage sans critères de recherche)
function fResetRecherche(fm, b_submit)
{
	n = (fm.elements.length)-1;
	for(i=0;i<=n;i++)
	{
		// Objet Select
		if (fm.elements[i].type=="select-one")		
			fm.elements[i].selectedIndex = 0;
		else	 if (fm.elements[i].type=="text")		
			// Objet Text
			fm.elements[i].value="";
		else	 if (fm.elements[i].type=="radio")		
			// Objet radiobouton
			fm.elements[i].checked=false;
	}
	if (b_submit) fm.submit();
	return true;
}



//--------------------------------
// Recherche l'id de l'élément sélectionné
//--------------------------------
function search_selected_item(fm)
{
	// y-a-t-il des éléments sélectionnés ?		
	n = (fm.elements.length)-1;
	var nb=0;
	var selected_id="";
	for(i=0;i<=n;i++)	{
		if (fm.elements[i].id == "supprimer" && fm.elements[i].checked)	{
			selected_id = fm.elements[i].value;
			nb = nb+1;
		}
	}
	if (nb==0)	{
		alert("Veuillez sélectionner un élément dans la liste");
		return false;
	} else if (nb>1) {
		alert("Veuillez ne sélectionner qu'un seul élément dans la liste");
		return false;
	} else {
		return(selected_id);
	}
}        

//--------------------------------
// Confirmation avant suppression
//--------------------------------
function confirm_suppr(fm)
{
	// y-a-t-il des éléments sélectionnés ?		
	n = (fm.elements.length)-1;
	var nb;
	nb=0;
	for(i=0;i<=n;i++)	{
		if (fm.elements[i].id == "supprimer" && fm.elements[i].checked)	{
			nb = nb+1;
		}
	}
	if (nb==0)	{
		alert("Vous n'avez sélectionné aucun élément.");
		return false;
	} else if (nb==1)	{
		msg = "Souhaitez-vous vraiment supprimer la ligne sélectionnée ?";
	} else	{
		msg = "Souhaitez-vous vraiment supprimer les lignes sélectionnées ?";
	}
   var poursuivre = confirm(msg);
	if (poursuivre)
		return true;
	else
		return false;
}        




function openWindow(url,fenetre,params) { //v2.0
  fille=window.open(url,fenetre,params);
}

function afficheMaxi(chemin)
	{
	i1 = new Image;
	i1.src = chemin;
	html = '<HTML><HEAD><TITLE>Image</TITLE></HEAD><BODY LEFTMARGIN=0 MARGINWIDTH=0 TOPMARGIN=0 MARGINHEIGHT=0><CENTER><IMG SRC="'+chemin+'" BORDER=0 NAME=imageTest onLoad="window.resizeTo(document.imageTest.width+14,document.imageTest.height+32)"></CENTER></BODY></HTML>';
	popupImage = window.open('','_blank','toolbar=0,location=0,directories=0,menuBar=0,scrollbars=0,resizable=1');
	popupImage.document.open();
	popupImage.document.write(html);
	popupImage.document.close()
	};



// Retour à la page "url"
function f_submit(url) 
{
	document.form1.action = url;
	document.form1.method = "get";
	document.form1.submit();
	return true;
}


// Rollover : OnMouseOver
function fRollChange(obj, img_f2)
{
	obj.src=img_f2;
}

// Rollover : OnMouseOut
function fRollRestore(obj, img)
{
	obj.src=img;
}


// Ouverture d'une fenêtre popup 
function Fenetre_Roll(URL,nom,largeur,hauteur) {
	var largeurEcran = screen.availWidth;
	var hauteurEcran = screen.availHeight;
	var xbase = (largeurEcran-largeur)/2; 
	var ybase = (hauteurEcran-hauteur)/3; 
	var optionFenetre = ', top=0,left=0, status=0, directories=0, toolbar=0, location=0, menubar=0, scrollbars=1, resizable=1';
	var tailleFenetre = ('width='+largeur+',height='+hauteur + optionFenetre);
	var fenetre = window.open(URL,nom,tailleFenetre);
	fenetre.moveTo(xbase,ybase);
}

//-->