///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function LIB_ControleDateValide(VP_DATE, VP_ANNEEBORNEMIN, VP_ANNEEBORNEMAX )
{
	//---------------------------------------------- INITIALISATION	-------------------
	if (VP_ANNEEBORNEMIN==undefined) VP_ANNEEBORNEMIN='1900'; if (VP_ANNEEBORNEMAX==undefined) VP_ANNEEBORNEMAX='2100';
	var VANNEE=0 ;
	var VMOI=0 ;
	var VJOUR=0 ;
	var VANNEE_BISEXTILE=0;

	VANNEE = VP_DATE.substr(4,4);
	VMOI   = VP_DATE.substr(2,2);
	VJOUR  = VP_DATE.substr(0,2);

	//--------------------------------------------      TRAITEMENT		--------------------
	


	if((VP_DATE.length==0)||(VP_DATE == 'JJMMAAAA')){
		return(0);
	}

	if((VP_DATE.length<8)){
		return(1);
	}
	if(VANNEE<VP_ANNEEBORNEMIN){
		return(2);
	}
	if(VANNEE>VP_ANNEEBORNEMAX){
		return(3);
	}
	if((VANNEE%4)==0){
		VANNEE_BISEXTILE=1
	}
	if((VMOI==0)||(VMOI>12)){
		return(4);
	}
	if(VJOUR==0){
		return(5);
	}
	switch(VMOI){
		case '01':
			if(VJOUR>31){
				return(6);
			}
		break;
		case '02':
			if(VANNEE_BISEXTILE==1){
				if(VJOUR>29){
					return(6);
				}
			}
			else {
				if(VJOUR>28){
					return(6);
				}
			}
		break;
		case 3:
			if(VJOUR>31){
				return(6)
			}
		break;
		case 4:
			if(VJOUR>30){
				return(6)
			}
		break;
		case 5:
			if(VJOUR>31){
				return(6)
			}
		break;
		case 6:
			if(VJOUR>30){
				return(6)
			}
		break;
		case 7:
			if(VJOUR>31){
				return(6)
			}
		break;
		case 8:
			if(VJOUR>31){
				return(6)
			}
		break;
		case 9:
			if(VJOUR>30){
				return(6)
			}
		break;
		case 10:
			if(VJOUR>31){
				return(6)
			}
		break;
		case 11:
			if(VJOUR>30){
				return(6)
			}
		break;
		case 12:
			if(VJOUR>31){
				return(6)
			}
		break;
		}
	return(0)
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function LIB_ResolutionEcran()
{
	EcranHaut = screen.height;
	EcranLarg = screen.width;
	Ecran = EcranLarg + " x " + EcranHaut;
	return(Ecran)
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function LIB_ControleCPostal(param_cp)
{

		if((param_cp.length==0)){
			return(1)							
		}
		if((param_cp.length<5)){
			return(0)							// Faux ou pas bon
		}
		if(param_cp.substr(0,2)=='00'){		// Pas bon non plus
			return(0)
		} 
		return(1)							// vrai ou bon
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function LIB_ControleCPostal_It(param_cp)
{

		if((param_cp.length==0)){
			return(1)							
		}
		if((param_cp.length<5)){
			return(0)							// Faux ou pas bon
		}
		return(1)							// vrai ou bon
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function LIB_ControleEmail(email){
	if((email.indexOf("@")==-1)||(email.indexOf("@")==0)||(email.indexOf("@")!=email.lastIndexOf("@"))||(email.indexOf(".")==email.indexOf("@")-1)||
			(email.indexOf(".")==email.indexOf("@") +1 )||(email.indexOf("@")==email.length -1)||(email.indexOf(".")==-1)||(email.lastIndexOf(".")==email.length -1)||
			(email.lastIndexOf(".")<email.indexOf("@"))) {
         return(false);
  }
  else{
         return(true);
   }
 }
 
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function LIB_ControleImmat(immat){



//  var Immat9999AA99=new RegExp("^[0-9]{1,4}[A-Z]{2}[0-9]{2}$", "g");
	
	/*
	var Immat9999AA2AB 	=new RegExp("^([^0000][0-9]{1,4})([A-Z]{2})(2[AB])$","g");
	var Immat999AAA99 	=new RegExp("^([^0000][0-9]{1,3})([A-Z]{3})([^00][0-9]{2})$","g");
	var Immat999AAA2AB 	=new RegExp("^([^0000][0-9]{1,3})([A-Z]{3})(2[AB])$","g");
	var Immat9999WWA99 	=new RegExp("^([^0000][0-9]{1,4})(WW[A-Z])([^00][0-9]{2})$","g");
	var Immat9999WWA2AB =new RegExp("^([^0000][0-9]{1,4})(WW[A-Z])(2[AB])$","g");
		
	var Good=false;
		
	if (Immat9999AA99.test(immat)==true){
		Good=true;
	}
	/*if (Immat9999AA2AB.test(immat)==true){
		Good=true;
	}
	if (Immat999AAA99.test(immat)==true){
		Good=true;
	}
	if (Immat999AAA2AB.test(immat)==true){
		Good=true;
	}
	if (Immat9999WWA99.test(immat)==true){
		Good=true;
	}
	if (Immat9999WWA2AB.test(immat)==true){
		Good=true;
	}*/

	return(Good);
} 

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function LIB_GereFocus(p_champs){

	//alert(p_champs);
	switch(p_champs){
		case "A39"  : _PAGE_.A39.focus() ;break;				// Date MEC de Page_Tarif_Info
		case "A40"  : _PAGE_.A40.focus() ;break;				// Code Postal de Page_Tarif_Info
		case "A10" : _PAGE_.A10.focus();break;					// Date de naissance de Page_Tarif_Info
		case "A12" : _PAGE_.A12.focus();break;					// Date permis moto de Page_Tarif_Info
		case "A13" : _PAGE_.A13.focus();break;					// Date permis auto de Page_Tarif_Info
		case "A14" : _PAGE_.A14.focus();break;					// CRM moto de Page_Tarif_Info
		case "A24" : _PAGE_.A24.focus();break;					// CRM auto de Page_Tarif_Info
		case "A26" : _PAGE_.A26.focus();break;					// Email de Page_Info_Souscripteur
		case "A27" : _PAGE_.A27.focus();break;					// Valider de Page_Info_Souscripteur
		case "A29" : _PAGE_.A29.focus();break;					// Ville de Page_Info_Souscripteur
		case "A32" : _PAGE_.A32.focus();break;					// Code Postal de Page_Info_Souscripteur
		case "A41" : _PAGE_.A41.focus();break;					// lieu de garage de Page_Tarif_Info
	}
	return(true);
}
