function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

/**Méthode vérifiant que le champ soitune adresse email*/
function isEmailAdress(valeur){
   var re = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
   if(!re.test(valeur))
        return true;

   return false;
}

var myns;
var appname = navigator.appName;
myns = navigator.appName == "Netscape";
function pop(page,nom,largeur,longueur)
{
	x=(screen.availWidth-largeur)/2;
	y=(screen.availHeight-longueur)/2;
	popwin=window.open(page,nom,"dependent=yes,toolbar=no,top="+y+",left="+x+",scrollbars=yes,width="+largeur+",height="+longueur+",resizable=no,status=no,alwaysRaised=yes,")
	popwin.focus()
}



var reg_email = /^[\w\-]+(\.[\w\-]+)*@[\w\-]+(\.[\w\-]+)*\.[\w\-]{2,}$/;
var error = '';
// Nom des Champs obligatoires du formulaire
var fields = new Array();
var fields_lang = 'fr';
// Titre de ces champs
var fields_title = new Array();
// Champs numériques
var fields_numeric = new Array();
// Emails a vérifier
var fields_email = new Array();
var field_classname_normal = 'field_normal';
var field_classname_error = 'field_error';

// Vérification formulaire demande
function check_form(form)
{
	var check_form_error_empty = '';
	var check_form_error_email = '';
	var check_form_error_numeric = '';
	switch(fields_lang)
	{
		case 'de':
			check_form_error_empty = 'Das Feld "FIELD_TITLE" ist zwingend';
			check_form_error_email = 'Sie müssen ein gültiges E-Mail angeben';
			check_form_error_numeric = 'The "FIELD_TITLE" ist numerisch';
			break;
		case 'en':
			check_form_error_empty = 'Your "FIELD_TITLE" is required';
			check_form_error_email = 'A valid e-mail adress is required';
			check_form_error_numeric = 'The "FIELD_TITLE" is numeric';
			break;
		case 'es':
			check_form_error_empty = 'El "FIELD_TITLE" es obligatorio';
			check_form_error_email = 'Debe precisar un correo electrónico válido';
			check_form_error_numeric = 'El "FIELD_TITLE" debe componerse de cifras solamente';
			break;
		case 'br':
		case 'it':
			check_form_error_empty = 'Il "FIELD_TITLE" è obbligatorio';
			check_form_error_email = 'Dovete precisare una posta elettronica valida';
			check_form_error_numeric = 'Il "FIELD_TITLE" deve essere composto da cifre soltanto';
			break;

		default :
			check_form_error_empty = 'Le champ "FIELD_TITLE" est obligatoire';
			check_form_error_email = 'Vous devez préciser un email valide';
			check_form_error_numeric = 'Le champ "FIELD_TITLE" doit être composé de chiffres uniquement';

	}
	// champ courant
	var field = null;
	// s'il est correctement rempli
	var res = false;
	var j = 0;
	// Boucle sur tous les champs du form
	for(var i = 0; i < form.elements.length; i++)
	{
		error = '';
		if(form.elements[i].type) // eviter de changer la classe d'autres éléments que des input, select, ....
			form.elements[i].className = field_classname_normal;
		if(form.elements[i].name != fields[j])
			continue;
		if(j >= fields.length )
			break;

		// Vérification du champs obligatoire
		field = form.elements[fields[j]];
		res = false;
		// Selon son type
		switch(field.type)
		{
			// Hidden
			case 'hidden' :
				res = true;
				break;
			// Select
			case 'select-one' :
				res = field.selectedIndex > 0 || (field.selectedIndex == 0 && field.options[field.selectedIndex].value != '' && field.options[field.selectedIndex].value > 0);
				break;
			// text ou textarea
			case 'text' :
			case 'password' :
			case 'textarea' :
				res = field.value != '';
				// OK, alors voyons voir s'il s'agit d'un champ email
				if(res && fields_email.length > 0)
				{
					for(var k = 0; k < fields_email.length; k++)
					{
						if(field.name == fields_email[k])
						{
							res = reg_email.test(field.value);
							if(!res)
							{
								error = check_form_error_email;
								break;
							}
						}
					}
				}
				// OK, alors voyons voir s'il s'agit d'un champ numéric
				if(res && fields_numeric.length > 0)
				{
					for(var k = 0; k < fields_numeric.length; k++)
					{
						if(field.name == fields_numeric[k])
						{
							res = !isNaN(field.value);
							if(!res)
							{
								error = check_form_error_numeric.replace('FIELD_TITLE', fields_title[j]);
								break;
							}
						}
					}
				}
				break;
			// pour les radio ou checkbox
			default :
				if(field.length)
				{
					for(var k = 0; k < field.length; k++)
					{
						field[k].parentNode.parentNode.className = field_classname_normal;

						res = field[k].checked;

						if(res)
							break;
					}
				}
				else if(field.checked)
				{
					res = field.checked;
				}
		}
		if(!res)
			break;
		j++;
	}
	// Si mal rempli
	if(!res)
	{
		error = (error == '') ? check_form_error_empty.replace('FIELD_TITLE', fields_title[j]) : error;
		alert(error);
		if(field.focus)
		{
			field.focus();
			field.className = field_classname_error;
		}
		else if(field.length)
		{
			var opt = null;
			for(var k = 0; k < field.length; k++)
			{
				opt = field[k].parentNode;
				field[k].parentNode.parentNode.className = field_classname_error;
			}
			// -> focus sur le premier élément
			window.scrollTo(0,opt.offsetTop);
		}
		return false;
	}
	return true;
}


function check_inscription(form, origin)
{
	if(check_form(form))
	{
		var msg = '';
		if (form.montant.value < 250 )
		{
			switch(fields_lang)
			{
				case 'de' : msg = 'Geben Sie bitte den Betrag an (minimum 250) !';break;
				case 'es' : msg = 'Quiere indicar el importe (minimum 250) !';break;
				case 'fr' : msg = 'Veuillez indiquer le montant (minimum 250) !';break;
				case 'it' : msg = 'Volete indicare l\'importo (minimum 250) !';break;
				default : msg = 'please indicate the paid amount (minimum 250) !';
			}
		   	alert(msg);
			return false;
		}
		else if (form.agree.checked == false )
		{
			switch(fields_lang)
			{
				case 'de' : msg = 'Sie müssen die Bedingungen akzeptieren, bevor Sie fortsetzen können !';break;
				case 'es' : msg = 'Debe aceptar las condiciones antes de poder seguir !';break;
				case 'fr' : msg = 'Vous devez accepter les conditions avant de pouvoir continuer !';break;
				case 'it' : msg = 'Dovete accettare le condizioni prima di potere continuare !';break;
				default : msg = 'you must accept the conditions before continuing !';
			}
			alert(msg);
			return false;
		}
		
		/**
		 * Traitement pour le tag ROI 
		 */ 
		var date = new Date(); //référence unique pour le TAG
		
		//Flux pour le tag
		var	Flux  = "<business>";
		Flux     += "<compte>azurlingua</compte>";
		Flux     += "<page>Inscription</page>";
		Flux     += "<reference>azr_"+origin+"_"+date.getTime()+"</reference>";
		Flux     += "<ht>1003</ht>";
		Flux     += "<ttc>1200</ttc>";
		Flux     += "<port>0</port>";
		Flux     += "<article>";
		Flux     += "<label>inscription</label>";
		Flux     += "<prix>1200</prix>";
		Flux     += "<quantite>1</quantite>";		
		Flux     += "</article>";
		Flux     += "</business>";
		Flux 	  = escape(Flux);
		
		try {
		  FB.Insights.impression({
		     'id' : 6002497459901,
		     'h' : 'ed8c886eac',
		     'value' : 3 // vous pouvez changer cette valeur de façon dynamique
	  });
		} catch (e) {}

		
		//adresse pour poster le tag
		var path="http://www.efficienttraffic.com/config/statv3_roi.php?versionTag=2&Flux="+Flux+"&CookieInt="+fidG+"&CookieAfter="+fidAfterG+"&emailInt="+emailG;
	
		/**
		 * Le tag est envoyé en ajax 
		 * une condition est placée pour s'assurer 
		 * que le .post ne sera appelé qu'une seule fois.
		 */
		if(document.getElementById('testROI').value!="1")
		{
			$.post(path,function(data){
				document.getElementById('testROI').value='1';
			});
		}	
			
		/**
		 * Est en attente qu'une fonction ajax aboutisse
		 * Lorsque le post est effectué on valide le formulaire
		 * le return true ne fonctionnant pas dans cette méthode.
		 */	
		$('#testROI').ajaxSuccess(function() {
			$("#frm_inscription").submit();
		});
		
			
		
	}
	return false;
}
