/* Utiliser la fonction ci-dessous comme ceci : 
valeur_text_dependant_select(champ_text, champ_select, nom_champ_select, 5,99,99,99,99,99);
*/                            

function valeur_text_dependant_select(champ_text, champ_select, nom_champ_select, valeur_select_ok_1, 
	valeur_select_ok_2,valeur_select_ok_3,valeur_select_ok_4,valeur_select_ok_5,valeur_select_ok_6)
{
	with(champ_text.form)
	{
		if( champ_select.selectedIndex == ""  )
		{
			alert('La valeur du champ '+nom_champ_select+' doit d\'abord être renseignée' ); 
			champ_text.value = "";
            champ_select.focus();
            return;
		}

		if( champ_text.value != "" && champ_select.selectedIndex != valeur_select_ok_1 && champ_select.selectedIndex != valeur_select_ok_2
			&& champ_select.selectedIndex != valeur_select_ok_3  && champ_select.selectedIndex != valeur_select_ok_4 && champ_select.selectedIndex != valeur_select_ok_5  
			&& champ_select.selectedIndex != valeur_select_ok_6  )
		{
			alert('La valeur du champ '+nom_champ_select+' n\'autorise pas la saisie de cette valeur ici.' ); 
			champ_text.value = "";
		}
	}
}

function valeur_text_dependant_text(champ_text, champ_text2, nom_champ_text2, valeur_text2_ok_1, 
	valeur_text2_ok_2,valeur_text2_ok_3,valeur_text2_ok_4,valeur_text2_ok_5,valeur_text2_ok_6)
{
	with(champ_text.form)
	{
        //Script servant dans charger_profil_rmqs, ne pas modifier !
		if( champ_text.value != "" && champ_text2.value != valeur_text2_ok_1 && champ_text2.value != valeur_text2_ok_2
			&& champ_text2.value != valeur_text2_ok_3  && champ_text2.value != valeur_text2_ok_4 && champ_text2.value != valeur_text2_ok_5  
			&& champ_text2.value != valeur_text2_ok_6  )
		{
			alert('La valeur du champ '+nom_champ_text2+' n\'autorise pas la saisie de cette valeur ici.' ); 
			champ_text.value = "";
		}
	}
}

function valeur_interdite_select(champ, valeur1, valeur2)
{
	with(champ.form)
	{	

		if ( champ.selectedIndex == valeur1 )
		{
			alert('ATTENTION : Cette valeur est interdite pour ce champ');
			champ.selectedIndex = 0;
		}
		if ( valeur2 != "" )
		{
			if ( champ.selectedIndex == valeur2 )
			{
				alert('ATTENTION : Cette valeur est interdite pour ce champ');
				champ.selectedIndex = 0;
			}
		}
	}
}


function annuler_modif(champ,chemin)
{
    with (champ.form )
    {
             if (confirm('Etes-vous s\u00FBr de vouloir annuler toutes les modifications ?') == true)
             {
                 document.location=chemin;
             }
    }     
}


function verifier_unite(champ, nom_champ, unite)
{
	with ( champ.form )
	{
		if ( champ.value != "")
		{
			 valeur = champ.value;
			 valeur = valeur.replace(/,/, '.');
		}
		else
		{
			 valeur = ""; //Important
		}

		if ( unite == '%')
		{
			if ( valeur < 0 || valeur > 100 )	
			{ 
				alert('ERREUR : La variable '+nom_champ+' est exprimée en pourcentage, la valeur doit etre comprise entre 0 et 100' );		
				champ.value="";
			}
		}
		else if ( unite.toUpperCase() == 'G/100G')
		{
			if ( valeur < 0 || valeur > 100 )	
			{ 
				alert('ERREUR : La variable '+nom_champ+' est exprimée en g/100g, la valeur doit etre comprise entre 0 et 100' );		
				champ.value="";
			}
		}
		else if ( unite.toUpperCase() == 'G/KG')
		{
			if ( valeur < 0 || valeur > 1000 )	
			{ 
				alert('ERREUR : La variable '+nom_champ+' est exprimée en g/kg, la valeur doit etre comprise entre 0 et 1000' );		
				champ.value="";
			}
		}
		else if ( unite.toUpperCase() == 'MG/KG')
		{
			if ( valeur < 0 || valeur > 1000000 )	
			{ 
				alert('ERREUR : La variable '+nom_champ+' est exprimée en mg/kg, la valeur doit etre comprise entre 0 et 1000000' );		
				champ.value="";
			}
		}
		else if ( unite.toUpperCase() == 'G/CM3')
		{
			if ( valeur < 0 || valeur > 2 )	
			{ 
				alert('ERREUR : La variable '+nom_champ+' est exprimée en g/cm3, la valeur doit etre comprise entre 0 et 2' );		
				champ.value="";
			}
		}
		else if ( unite.toUpperCase() == 'PH' )
		{
			if ( valeur < 0 || valeur > 14 )	
			{ 
				alert('ERREUR : La variable '+nom_champ+' est exprimée en unité pH, la valeur doit etre comprise entre 0 et 14' );		
				champ.value="";
			}
		}
        else if (unite.toUpperCase() == 'DEGRE' )
	    {
			if ( valeur < 0 || valeur > 360 )	
			{ 
				alert('ERREUR : La variable '+nom_champ+' est exprimée en unité degré, la valeur doit etre comprise entre 0 et 360' );		
				champ.value="";
			}
		}
        else if (unite.toUpperCase() == 'ALLEE' )
        {
			if ( valeur < 1 || valeur > 16 )	
			{ 
				alert('ERREUR : l\'identifiant de l\'allée doit etre compris entre 1 et 16' );		
				champ.value="";
			}
        }
        else if (unite.toUpperCase() == 'COLONNE' )
        {
			if ( valeur < 1 || valeur > 6 )	
			{ 
				alert('ERREUR : l\'identifiant de la colonne doit etre compris entre 1 et 6' );		
				champ.value="";
			}
        }
        else if (unite.toUpperCase() == 'ETAGERE' )
        {
			if ( valeur < 1 || valeur > 9 )	
			{ 
				alert('ERREUR : l\'identifiant de l\'étagère doit etre compris entre 1 et 9' );		
				champ.value="";
			}
        }

	}
}

function verifier_unite_comparaison(champ, nom_champ, unite)
{
     with(champ.form)
     {
       //rien
     }
}


function test_min_mod_max(objet,Min,Mod,Max,nom,type )
{
	
	with ( objet.form)
	{
		if ( Min.value != "")
		{
			minimum = Min.value;
			minimum = minimum.replace(/,/, '.');
		}
		else
		{
			minimum = ""; //Important
		}
		if ( Mod.value != "")
		{
			moyen   = Mod.value;
			moyen = moyen.replace(/,/, '.');
		}
		else
		{
			moyen = ""; //Important
		}
		if ( Max.value != "")
		{
			maximum = Max.value;
			maximum = maximum.replace(/,/, '.');
		}
		else
		{
			maximum = ""; //Important
		}

		if (type == "min" ) 
		{
			if ( eval(minimum) >= eval(moyen) && minimum !="" && moyen != "" ) 
			{
				alert('ERREUR ! '+nom+' Minimale doit \u00EAtre strictement < \u00e0 '+nom+' Moyenne !!') ;
				Min.value="" ;
			}
			if ( eval(minimum) >= eval(maximum) && minimum!="" && maximum!="" )
			{
				alert('ERREUR ! '+nom+' Minimale doit \u00EAtre strictement < \u00e0 '+nom+' Maximale !') ;
				Min.value="" ;
			}
		}
		else if (type =="mod") 
		{
			if ( eval(moyen) >= eval(maximum) && maximum!="" && moyen!="")
			{
				alert('ERREUR ! '+nom+' Moyenne doit \u00EAtre strictement < \u00e0 '+nom+' Maximale !!') ;
				Mod.value="" ;
			}
			if ( eval(minimum) >= eval(moyen) && minimum!="" && moyen!="")
			{
				alert('ERREUR ! '+nom+' Moyenne doit \u00EAtre > \u00e0 '+nom+' Minimale !!') ;
				Mod.value="" ;
			}
		}
		else if (type =="max") 
		{
			if ( eval(moyen) >= eval(maximum) && maximum!="" && moyen!="")
			{
				alert('ERREUR ! '+nom+' Maximale doit \u00EAtre > \u00e0 '+nom+' Moyenne !!') ;
				Max.value="" ;
			}
			if ( eval(minimum) >= eval(maximum) && minimum!="" && maximum!="" )
			{
				alert('ERREUR ! '+nom+' Maximale doit \u00EAtre > \u00e0 '+nom+' Minimale !') ;
				Max.value="" ;
			}
		}
	}
}

function test_min_mod_max_ou_egal(objet,Min,Mod,Max,nom,type )
{
	
	with ( objet.form)
	{
		if ( Min.value != "")
		{
			minimum = Min.value;
			minimum = minimum.replace(/,/, '.');
		}
		else
		{
			minimum = ""; //Important
		}
		if ( Mod.value != "")
		{
			moyen   = Mod.value;
			moyen = moyen.replace(/,/, '.');
		}
		else
		{
			moyen = ""; //Important
		}
		if ( Max.value != "")
		{
			maximum = Max.value;
			maximum = maximum.replace(/,/, '.');
		}
		else
		{
			maximum = ""; //Important
		}

		if (type == "min" ) 
		{
			if ( eval(minimum) > eval(moyen) && minimum !="" && moyen != "" ) 
			{
				alert('ERREUR ! '+nom+' Minimale doit \u00EAtre  < ou = \u00e0 '+nom+' Moyenne !!') ;
				Min.value="" ;
			}
			if ( eval(minimum) > eval(maximum) && minimum!="" && maximum!="" )
			{
				alert('ERREUR ! '+nom+' Minimale doit \u00EAtre  < ou = \u00e0 '+nom+' Maximale !') ;
				Min.value="" ;
			}
		}
		else if (type =="mod") 
		{
			if ( eval(moyen) > eval(maximum) && maximum!="" && moyen!="")
			{
				alert('ERREUR ! '+nom+' Moyenne doit \u00EAtre  < ou = \u00e0 '+nom+' Maximale !!') ;
				Mod.value="" ;
			}
			if ( eval(minimum) > eval(moyen) && minimum!="" && moyen!="")
			{
				alert('ERREUR ! '+nom+' Moyenne doit \u00EAtre > ou = \u00e0 '+nom+' Minimale !!') ;
				Mod.value="" ;
			}
		}
		else if (type =="max") 
		{
			if ( eval(moyen) > eval(maximum) && maximum!="" && moyen!="")
			{
				alert('ERREUR ! '+nom+' Maximale doit \u00EAtre > ou = \u00e0 '+nom+' Moyenne !!') ;
				Max.value="" ;
			}
			if ( eval(minimum) > eval(maximum) && minimum!="" && maximum!="" )
			{
				alert('ERREUR ! '+nom+' Maximale doit \u00EAtre > ou = \u00e0 '+nom+' Minimale !') ;
				Max.value="" ;
			}
		}
	}
}

function test_min_mod_max_comparaison(objet,Min,Mod,Max,nom,type )
{
	with ( objet.form)
	{
      //rien
    }
}

function test_min_max(objet,Min,Max,nom,type )
{
	with ( objet.form)
	{
		if ( Min.value != "")
		{
			minimum = Min.value;
			minimum = minimum.replace(/,/, '.');
		}
		else
		{
			minimum = ""; //Important
		}
		if ( Max.value != "")
		{
			maximum = Max.value;
			maximum = maximum.replace(/,/, '.');
		}
		else
		{
			maximum = ""; //Important
		}

		if (type == "min" ) 
		{
			if ( eval(minimum) >= eval(maximum) && minimum != "" && maximum != "" )
			{
				alert('ERREUR ! '+nom+' Minimale doit \u00EAtre strictement < \u00e0 '+nom+' Maximale !') ;
				Min.value="" ;
			}
		}
		else if (type =="max") 
		{
			if ( eval(minimum) >= eval(maximum) && minimum!="" && maximum!="" )
			{
				alert('ERREUR ! '+nom+' Maximale doit \u00EAtre > \u00e0 '+nom+' Minimale !') ;
				Max.value="" ;
			}
		}
	}
}

function test_min_max_comparaison(objet,Min,Max,nom,type )
{

}

function test_min_max_ou_egal(objet,Min,Max,nom_min,nom_max,type )
{
	with ( objet.form)
	{
		if ( Min.value != "")
		{
			minimum = Min.value;
			minimum = minimum.replace(/,/, '.');
		}
		else
		{
			minimum = ""; //Important
		}
		if ( Max.value != "")
		{
			maximum = Max.value;
			maximum = maximum.replace(/,/, '.');
		}
		else
		{
			maximum = ""; //Important
		}

		if (type == "min" ) 
		{
			if ( eval(minimum) > eval(maximum) && minimum != "" && maximum != "" )
			{
				alert('ERREUR ! '+nom_min+' doit \u00EAtre < ou = \u00e0 '+nom_max+' !') ;
				Min.value="" ;
			}
		}
		else if (type =="max") 
		{
			if ( eval(minimum) > eval(maximum) && minimum!="" && maximum!="" )
			{
				alert('ERREUR ! '+nom_max+' doit \u00EAtre > ou = \u00e0 '+nom_min+' !') ;
				Max.value="" ;
			}
		}
	}
}

function test_min_max_ou_egal_comparaison(objet,Min,Max,nom_min,nom_max,type )
{

}

function test_egal_3(objet,champ1,champ2,champ3,nom )
{
	with ( objet.form)
	{
		if (    (champ1.value == champ2.value && champ1.value != '') 
			 || (champ1.value == champ3.value && champ1.value != '')  
			 || (champ2.value == champ3.value && champ3.value != ''))
		{
			alert('Erreur : 2 champs sont égaux pour la variable '+nom+' !');
			objet.value = '';
		}  
	}
}
