function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function PopupCentrer(page,nom,largeur,hauteur,options) {
  var top=(screen.height-hauteur)/2;
  var left=(screen.width-largeur)/2;
  var v_Win = window.open(page,nom,"top="+top+",left="+left+",width="+largeur+",height="+hauteur+","+options);
  return v_Win;
}

function f_CheckAll(p_Valeur, p_Type){
	var v_Return=true
	switch (p_Type){
		case "integer" :
			v_Return=f_CheckNumerique(p_Valeur)
		break;
		
		case "decimal" :
			v_Return=f_CheckDecimal(p_Valeur)
		break;
		
		case "decimalnolimit" :
			v_Return=f_CheckDecimalNoLimit(p_Valeur)
		break;
		
		case "taux" :
			v_Return=f_CheckNumerique(p_Valeur)
			if (v_Return==true){
				v_Return=f_CheckTaux(parseInt(p_Valeur))
			}
			
		break;
		
		case "varchar" :
			v_Return=f_CheckChaineVide(p_Valeur)
		break;
		
		case "date" :
			v_Return=f_CheckDate(p_Valeur)
		break;

		case "dateslash" :
			v_Return=f_CheckDateSlash(p_Valeur)
		break;
		
		case "datetiret" :
			v_Return=f_CheckDateTiret(p_Valeur)
		break;		
		
		case "heuredeuxpoint" :
			v_Return=f_CheckHeureDeuxPoint(p_Valeur)
		break;				
		
		case "codepostal" :
			v_Return=f_CheckCodePostal(p_Valeur)
		break;
		
		case "telephone" :
			v_Return=f_CheckTelephone(p_Valeur)
		break;
		
		case "url" :

		break;
		
		case "email" :

		break;
		
		case "numerosecu" :
			v_Return=f_CheckNumeroSecu(p_Valeur)
		break;
		
		case "organisme" :
			v_Return=f_CheckOrganisme(p_Valeur)
		break;
		
		case "ribets" :
			v_Return=f_CheckRIBEts(p_Valeur)
		break;
		
		case "ribguichet" :
			v_Return=f_CheckRIBGuichet(p_Valeur)
		break;
		
		case "ribcompte" :
			v_Return=f_CheckRIBCompte(p_Valeur)
		break;

		case "ribcle" :
			v_Return=f_CheckRIBCle(p_Valeur)
		break;

		case "decimalsigne" :
			v_Return=f_CheckDecimalSigne(p_Valeur)
		break;
		
		default:

		break;
		
	}
  return (v_Return)
}


function f_CheckNumerique(p_Nombre){
	var v_Return=true
	v_Chaine = new String(p_Nombre);
	re = /^\d{1,}$/;
	if ( ! re.test(v_Chaine) ){
		v_Return=false
		return (v_Return)
	}
	return (v_Return)
}

function f_CheckChaineVide(p_Chaine){
	var v_Return=true
	v_Chaine = new String(p_Chaine);
	re = /\w{1,}/;
	if ( ! re.test(v_Chaine) ){
		v_Return=false
		return (v_Return)
	}
	return (v_Return)
}


function f_EmailCheck (p_Email) {

	var emailPat=/^(.+)@(.+)$/

	var specialChars="\\(\\)<>@,;':\\\\\\\"\\.\\[\\]\*"

	var validChars="\[^\\s" + specialChars + "\]"

	var quotedUser="(\"[^\"]*\")"

	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/

	var atom=validChars + '+'

	var word="(" + atom + "|" + quotedUser + ")"

	var userPat=new RegExp("^" + word + "(\\." + word + ")*$")

	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")

	var matchArray=p_Email.match(emailPat)
	if (matchArray==null) {
		return false
	}
	var user=matchArray[1]
	var domain=matchArray[2]

	if (user.match(userPat)==null) {
	    return false
	}

	var IPArray=domain.match(ipDomainPat)
	if (IPArray!=null) {
		  for (var i=1;i<=4;i++) {
		    if (IPArray[i]>255) {
			return false
		    }
	    }
	    return true
	}

	var domainArray=domain.match(domainPat)
	if (domainArray==null) {
	    return false
	}

	var atomPat=new RegExp(atom,"g")
	var domArr=domain.match(atomPat)
	var len=domArr.length
	if (domArr[domArr.length-1].length<2 || 
	    domArr[domArr.length-1].length>4) {
	   return false
	}

	if (len<2) {
	   var errStr="Cette adresse e-mail n'a pas d'hôte!"
	   return false
	}

	return true;
}

function valid_qte(form_id)
		{
	

			var message="";
			if(
				(document.forms[form_id].elements['quantite'].value.length==0) || 
				(!f_CheckAll(document.forms[form_id].elements['quantite'].value, "integer"))	
			  )
			  {
				message+="Veuillez remplir correctement le champ quantit\351.";				
			  }


			if(message!="")
			{
				alert(message);
				return false;
			}
			return true;
		}
