
		function checkform(of)
		{
			// Teste si DOM est disponible et s'il y a un élément appelé "required"
			if(!document.getElementById || !document.createTextNode){return;}
			if(!document.getElementById('required')){return;}

			// Définit les messages d'erreur et sépare les champs requis
			var errorID='errormsg';
			var errorClass='error'
			var errorMsg='Merci d\'entrer ou de modifier le contenu des champs indiqués en rouge.\n';
			var reqfields=document.getElementById('required').value.split(',');
			var errorPresent = 0;
			
			// suppression des anciens champs rouges
			for(var i=0;i<reqfields.length;i++)
			{
				var f=document.getElementById("l"+reqfields[i]);
				if(!f){continue;}
				f.className='';
			}


			// boucle sur les champs requis
			for(var i=0;i<reqfields.length;i++)
			{
				// vérifie que le champs requis est présent
				var f=document.getElementById(reqfields[i]);
				var f2=reqfields[i];				
				if(!f){continue;}
				
				switch(f.type.toLowerCase())
				{
					case 'text':
						if(f.value=='' && f.id!='email'){cf_adderr(f)}							
						if(f.id=='email' && !cf_isEmailAddr(f.value)){cf_adderr(f)}							
					break;
					case 'textarea':
						if(f.value==''){cf_adderr(f)}							
					break;
					case 'checkbox':
						if(!f.checked){cf_adderr(f)}							
					break;
					case 'select-one':
						if(!f.selectedIndex && f.selectedIndex==0){cf_adderr(f)}							
					break;
				}
			}
			
		    // retour
			if (errorPresent == 0) {
				return true;
			} else {
				alert(errorMsg)
				return false;
			}


			function cf_adderr(o)
			{
				errorPresent=1;
				document.getElementById("l"+f2).className = 'error';
			}
			function cf_isEmailAddr(str) 
			{
			    return str.match(/^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/);
			}
		}

function formSubmit(f)
{
document.getElementById(f).submit()
}

function AnotherFormSubmit(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

