//syntaxe : id : 'nom|option'
// id : identifiant de input , 'nom':nom textuel du champ
// option O:obligatoire , E:email , N:numerique , Ln:longueur n , T:telephone
// option I:identifiant numérique avec des tirets, C : Checkbox coché
// option Rn et Rn:champs doivent etre identiques
function checkoblig(v_oblig)
{
	oblig_msg=checkoblig_msg(v_oblig);
	if (oblig_msg != '') {alert(oblig_msg); return false;}
	return true;
}
function checkoblig_msg(v_oblig)
{
		oblig_msg=''
		for (oblig_item in v_oblig){
			oblig_nom=v_oblig[oblig_item]

			oblig_opt='O'
			if (oblig_nom.indexOf('|')>=0)
			{
				oblig_opt=oblig_nom.substring(oblig_nom.indexOf('|')+1)
				oblig_nom=oblig_nom.substring(0,oblig_nom.indexOf('|'))
			}

			// recup de la valeur par getElementById ou getElementsByName
			oblig_obj=null
			if (document.getElementById(oblig_item))
            	oblig_obj=document.getElementById(oblig_item)
			else
			if (document.getElementsByName(oblig_item))
            	oblig_obj=document.getElementsByName(oblig_item)[0]
			oblig_val=oblig_obj.value

			if ((oblig_val=='')&&(oblig_opt.match(/O/)))
				oblig_msg=oblig_msg+oblig_nom+' est une valeur obligatoire \n';

			if  ((oblig_opt.match(/C/)))
				if (!(oblig_obj.checked))
					oblig_msg=oblig_msg+oblig_nom+' doit être coché \n';

			if (oblig_val!='')
			{
				if (oblig_opt.match(/E/))
					if (!oblig_val.match(/^[a-z\-\.A-Z0-9_]+\@[a-z\-\.A-Z0-9]+$/))
						oblig_msg=oblig_msg+oblig_nom+' "'+oblig_val+'" doit être une adresse email \n';
				//if (oblig_opt.match(/U/)
				if (oblig_opt.match(/N/))
					if (!oblig_val.match(/^[0-9]+$/))
						oblig_msg=oblig_msg+oblig_nom+' "'+oblig_val+'" doit être un nombre \n';
				if (oblig_opt.match(/I/))
					if (!oblig_val.match(/^[0-9\- ]+$/))
						oblig_msg=oblig_msg+oblig_nom+' "'+oblig_val+'" doit être un nombre \n';
				if (oblig_opt.match(/L/))
				{
					oblig_len=parseInt(oblig_opt.replace(/^.*L(\d+).*$/,"$1"))
					if (oblig_val.length<oblig_len)
						oblig_msg=oblig_msg+oblig_nom+' "'+oblig_val+'" doit être de longueur '+oblig_len+' \n';
				}
				if (oblig_opt.match(/T/))
					if (!oblig_val.match(/^[0-9 \-\.\+\(\)]+$/))
						oblig_msg=oblig_msg+oblig_nom+' "'+oblig_val+'" doit être un numéro de téléphone \n';
			}
		}
		return(oblig_msg);
}


