function formulaire_index( sUrlBase ){
	
	this._sPageRequest = sUrlBase + "/formulaire/request.php";

	//submit du formulaire
	this.submitForm = function(){
		try{
			var oNom = document.getElementById( "nom" );
			var oNcp = document.getElementById( "ncp" );
			var oVille = document.getElementById( "ville" );
			var oTel = document.getElementById( "tel" );
			var oEmail = document.getElementById( "email" );
			var oCaptcha = document.getElementById( "captcha" );
			if( !oNom || !oNcp || !oVille || !oTel || !oEmail || !oCaptcha )
				return false;
		
			var sMessage = "";
			if( oNom.value == "" )
				sMessage += "\n-Field Name/First name can't be empty !";
			if( oNcp.value == "" )
				sMessage += "\n-Field Postcode can't be empty !";
			if( oVille.value == "" )
				sMessage += "\n-Field Town can't be empty !";
			if( oTel.value == "" )
				sMessage += "\n-Field Tel can't be empty!";
			if( oEmail.value == "" )
				sMessage += "\n-Field Email can't be empty !";
			else if( !this._validEmail( oEmail.value ) )
				sMessage += "\n-Email is incorrect !";
			if( oCaptcha.value == "" )
				sMessage += "\n-Field Captcha anti-spam can't be empty !";
			else{
				//verification du captcha en ajax
				var sResponse = this._postRequest( "request=controlcapcha&value=" + oCaptcha.value );
				if( sResponse != "true" )
					sMessage += "\n-Captcha is incorrect !";
			}
	
			if( sMessage == "" )
				return true;
			
			alert( "Please, check following things :" + sMessage );
			return false;
		}catch(oException){
			alert( "An error occured in formulaire/formulaire_index.js : submitForm : " + oException.message );
			return false;
		}
	}
	
	//verification d'une adresse email
	this._validEmail = function( sEmail ){
		try{
			var oReg = new RegExp( "^[a-z0-9]*((\.|_|-)[a-z0-9]+)*@[a-z0-9]+((\.|-)[a-z0-9]+)*(\.[a-z]{2,4})$", "i" );
			if( !oReg.test( sEmail ) )
				return false;
			var emailDomaine = sEmail.substring(sEmail.lastIndexOf("@"),sEmail.length-1);
			var rech = emailDomaine.lastIndexOf(".");
			if( rech != -1 )
				return true;
			else
				return false;
		}catch(oException){
			return false;
		}
	}
	
	//execution d'une requette de type ajax
	this._postRequest = function( sRequest ){
		try{
			var xhr_object = null;
			if( window.XMLHttpRequest ) // Firefox
				xhr_object = new XMLHttpRequest();
			else if( window.ActiveXObject ) // Internet Explorer
				xhr_object = new ActiveXObject( "Microsoft.XMLHTTP" );
			else { // XMLHttpRequest non supporté par le navigateur
				alert( "Votre navigateur ne supporte pas les objets XMLHTTPRequest..." );
				return;
			}

			//requet synchrone
			xhr_object.open( "POST", this._sPageRequest, false );
			xhr_object.setRequestHeader( "Content-type", "application/x-www-form-urlencoded" );
			xhr_object.send( sRequest );

			return xhr_object.responseText;
		}catch(oException){
			alert( "Une erreur est survenue dans formulaire/formulaire_index.js : _postRequest : " + oException.message );
			return "";
		}
	}
}
