// JavaScript Document

/*
//Date fin du jeu 3 Juin(05) 2008 à 23h59
var dateActuel = new Date();
var dateFin = new Date(2008,5,3,23,59,59);
if( dateActuel.getTime() >= dateFin.getTime()){
	document.location.href = "end.php"; 
}
*/

Event.observe(window, 'load', function() {
	<!-- Variable globale -->
	var MYOBJ = new Object();
	run_participation();
});	

String.prototype.trim = function() {
    return this.replace(/^\s*|\s*$/g, '');
}

String.prototype.ltrim = function() {
    return this.replace(/^\s*/g, '');
}

String.prototype.rtrim = function() {
    return this.replace(/\s*$/g, '');
}


function run_participation()
{
	Event.observe('btn_valider', 'mouseover', function() {$('btn_valider').src = 'images/btn_valider2.jpg';} );		
	Event.observe('btn_valider', 'mouseout', function() {$('btn_valider').src = 'images/btn_valider.jpg';} );		
}

function validation_formParticipation(){
	var form = $('form_participation');

	var email = form.ins_email.value.trim();

	var verifEmail = /^[a-zA-Z0-9\_\-\.]+@[a-zA-Z0-9\-\.]{2,}\.[a-zA-Z]{2,3}$/ ;
	var verifCp = /^[0-9]{5}$/ ;
	var cp = form.ins_cp.value.trim();
	
	var verifNumVoie = /^[0-9]+$/ ;
	var numVoie = form.num_voie.value.trim();
		
	if (!form.ins_civilite[0].checked && !form.ins_civilite[1].checked && !form.ins_civilite[2].checked){
		alert("Veuillez indiquer votre civilité.");
		return false;
	}else if (form.ins_nom.value.trim() == ''){
		alert("Veuillez saisir votre nom.");
		form.ins_nom.focus();
		return false;
	}else if (form.ins_prenom.value.trim() == ''){
		alert('Veuillez saisir votre prénom.');
		form.ins_prenom.focus();
		return false;
	}else if (numVoie == ''){
		alert('Veuillez saisir le numero de la voie où vous habitez.');
		form.num_voie.focus();
		return false;
	}else if (verifNumVoie.exec(numVoie) == null){
		alert("Vérifiez le numéro de la voie. ");
		form.num_voie.focus();
		return false;
	}else if (form.nom_voie.value.trim() == ''){
		alert('Veuillez saisir le nom de la voie où vous habitez.');
		form.nom_voie.focus();
		return false;
	}else if (cp == ''){
		alert("Veuillez saisir votre code postal.");
		form.ins_cp.focus();
		return false;
	}else if (verifCp.exec(cp) == null) {
		alert("Vérifiez votre code postal !");
		form.ins_cp.focus();
		return false;
	}else if (form.ins_ville.value.trim() == ''){
		alert("Veuillez saisir votre ville.");
		form.ins_ville.focus();
		return false;
	}else if (email == ''){
		alert("Veuillez saisir votre adresse électronique.");
		form.ins_email.focus();
		return false;
	}else if (verifEmail.exec(email) == null){
		alert("Vérifiez votre adresse électronique.");
		form.ins_email.focus();
		return false;
	}else if (email !== form.ins_emailBis.value.trim() ){
		alert("L'email de vérification ne correspond pas à votre email.");
		form.ins_emailBis.focus();
		return false;
	}else{
		return run_questionaire();
	}
		
}// JavaScript Document

function run_questionaire()
{
	//Recuperation des éléments du formulaire de participation
	var elts = $H($('form_participation').serialize(true));
	var checkbox = $('form_participation').getInputs('checkbox');
	checkbox.each(function(elt){
		var val = (elt.checked) ? elt.value.trim() : "0";
		elts.set(elt.id, val);
	})
	MYOBJ = elts.toObject();
	
	//masquer le formulaire de participation
	$('conteneur_right').hide();
	
	//afficher le questionnaire
	var contenu  = '<img src="images/index_02.jpg" width="444" height="86" alt="">';
	contenu  += '<img src="images/questions_04.jpg" width="444" height="74" alt="">';
	contenu  += '<img src="images/questions_06.jpg" width="444" height="161" alt="">';
	contenu  += '<img src="images/questions_08.jpg" width="444" height="158" alt="">';
	contenu  += '<img src="images/questions_10.jpg" width="444" height="121" alt="">';
	$('tab_fond_right').update(contenu); 
	$('conteneur_left').show();
	MYOBJ['num_etape'] = 1;
	
	Event.observe('btn_valider_questions', 'mouseover', function() {$('btn_valider_questions').src = 'images/btn_valider_ombre_12.gif';} );		
	Event.observe('btn_valider_questions', 'mouseout', function() {$('btn_valider_questions').src = 'images/btn_valider_12.gif';} );	

	return false;
}

function validation_formQuestions(){
	switch (MYOBJ['num_etape'])
	{
		case 1 : 	var message = validate_question("question1", 3);
					if(message != ""){
						alert(message);
					}else{
						$("block_etape2").show();
						$("block_etape1").hide();
						MYOBJ["num_etape"] = 2;
					}
					break;
			
		case 2 :	var message = validate_question("question2", 3);
					if(message != ""){
						alert(message);
					}else{
						$("block_etape3").show();
						$("block_etape2").hide();
						MYOBJ["num_etape"] = 3;
					}
					break;
					
		case 3 : 	var message = validate_question("question3", 3);
					if(message != ""){
						alert(message);
					}else{
						enregistrement();
					}
					
					break;
	}
	return false;
}

function validate_question(question, fin)
{
	var message = "";
	var elt = $('form_questions')[question];
	$A($R(0, fin)).each(function(num){  
		if(elt[num].checked) {	
			message= "";
			throw $break; 
		}else{
			message= elt[num].title;
		}
	})
	return message;
}


function enregistrement()
{
	//Recuperation des éléments
	var elts = $H($('form_questions').serialize(true));
	elts.each(function(elt){
		MYOBJ[elt[0]] =  elt[1];
	})
	
	//Griser le fond
	$('tab_fond').setOpacity(0.5);
	
	//Afficher le message
	$('message').show();
	

	//Rendre inactif les formulaires
	var form2 = $('form_questions');
	form2[form2.disabled ? 'disable' : 'disable']();


	new Ajax.Request('pages/traitement.php', {
		method: 'post',
		parameters:MYOBJ,
		onFailure : function()
		{
			setTimeout("echecEnvoi()", 3000);
		},
		onComplete: function(transport) {
			$('form_participation').reset();
			$('form_questions').reset();
			setTimeout("confirmation()", 3000);
		}
	});
}

function echecEnvoi()
{
	var message = "<h1>Désolé, <br>Votre participation n'a pas été prise en compte. Veuillez recommencer <a href='#'>Participer</a>.</h1>";
	$('conteneur_left').update(message);
	[$('tab_fond'), $('conteneur_left')].invoke('setOpacity', 1);
	[$('message')].invoke('hide');
	var form2 = $('form_questions');
	form2[form2.enable ? 'enable' : 'enable']();
}

function confirmation()
{	
	var contenu  = '<img src="images/index_02.jpg" width="444" height="86" alt="">';
	contenu  += '<img src="images/confirmation_04.jpg" width="444" height="74" alt="">';
	contenu  += '<img src="images/confirmation_06.jpg" width="444" height="161" alt="">';
	contenu  += '<img src="images/confirmation_08.jpg" width="444" height="158" alt="">';
	contenu  += '<img src="images/confirmation_10.jpg" width="444" height="121" alt="">';
	$('tab_fond_right').update(contenu); 
	
	[$('tab_fond'), $('conteneur_left')].invoke('setOpacity', 1);
	$('conteneur_left').hide();
	[$('message')].invoke('hide');
	var form2 = $('form_questions');
	form2[form2.enable ? 'enable' : 'enable']();
}



