// 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() {	
	Event.observe('btn_participation', 'click', function() { validation_forms() } );
	Event.observe('btn_questions', 'click', function() { validation_forms() } );
});	


function validation_forms(){
	message = validation_participation('form_participation');	
	if (!message){
		return false;	
	}
	
	$('container_participation').hide();
	$('container_questions').show();
	
	var message = checkingQuestions('form_questions');			
	if (message)
	{
		
		enregistrement('form_participation', 'form_questions');
	}

	return false;

}


function ischecked(elt)
{
	var ret = false;
	$A($R(0, elt.length - 1)).each(function(num){  
		 if(elt[num].checked) 
		 {	
		 ret = true ;
		 }	 
	})	
	return ret;
}


function checkingQuestions(idForm)
{
	if($("question_1").visible())
	{
		elt = $(idForm)['ins_q1'];
		if(!ischecked(elt))
		{
			alert(elt[0].title);
			return false;
		}else{
			$("question_1").hide();
			$("question_2").show();
			return false;
		}
	}
	else if($("question_2").visible())
	{
		elt = $(idForm)['ins_q2'];
		
		if(!ischecked(elt))
		{
			alert(elt[0].title);
			return false;
		}else{
			$("question_2").hide();
			$("question_3").show();
			return false;
		}		
	}else if($("question_3").visible())
	{
		elt = $(idForm)['ins_q3'];
		if(!ischecked(elt))
		{
			alert(elt[0].title);
			return false;
		}
		
	}else{
		 $("question_1").show();	
		return false;
	}
	
	return true;
}

function enregistrement(inscription, question)
{
	//Recuperation des éléments
	var elts = $H($(question).serialize(true));
	var elts_tmp = $H($(inscription).serialize(true));
	elts = elts.update(elts_tmp);
	
	var checkbox = $(inscription).getInputs('checkbox');
	checkbox.each(function(elt){
		var val = (elt.checked) ? elt.value.strip() : "0";
		elts.set(elt.id, val);
	})
	elts = elts.toObject();
	$("mybody").setOpacity(0.5);
	//$('message').show();
    
	//Rendre inactif les formulaires
	var form1 = $(inscription);
		form1[form1.disabled ? 'disable' : 'disable']();
	var form2 = $(question);
	form2[form2.disabled ? 'disable' : 'disable']();
		

	new Ajax.Request('pages/traitement.php', {
		method: 'post',
		parameters:elts,
		onFailure : function()
		{
			setTimeout("echecEnvoi()", 5000);
		},
		onComplete: function(transport) {
			setTimeout("confirmation()", 5000);
		}
	});
	
}


function echecEnvoi()
{
	var message = "Désolé, <br>Votre participation n'a pas été prise en compte.<br><br>";
	message += " Veuillez recommencer <a href=''>JOUER</a>.";
	afficherJeu(message);
}

function confirmation()
{	
	var message = "Bravo !!<br>Votre participation a bien été prise en compte.<br><br>";
	message += "Retrouvez les horaires du film L'incroyable Hulk sur <a href='http://www.cinemasgaumontpathe.com' target='_blank'>www.cinemasgaumontpathe.com</a>";
	afficherJeu(message);
}

function afficherJeu(message)
{
	$('form_title').update(message);	
	$("mybody").setOpacity(1);
	[$('message')].invoke('show');	
	
	$('form_participation').reset();
	$('form_questions').reset();

	var form1 = $('form_participation');
	form1[form1.enable ? 'enable' : 'enable']();
	var form2 = $('form_questions');
	form2[form2.enable ? 'enable' : 'enable']();
	
	$('form_participation').hide();
	$('form_questions').hide();	
}

	
function validation_participation(idForm){
	var form = $(idForm);

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

	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.strip();
	
	var verifNumVoie = /^[0-9]+$/ ;
	var numVoie = form.num_voie.value.strip();
		
	if (form.ins_civilite.value.strip() == ''){
		alert("Veuillez indiquer votre civilité.");
		return false;
	}else if (form.ins_nom.value.strip() == ''){
		alert("Veuillez saisir votre nom.");
		form.ins_nom.focus();
		return false;
	}else if (form.ins_prenom.value.strip() == ''){
		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.strip() == ''){
		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.strip() == ''){
		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.strip() ){
		alert("L'email de vérification ne correspond pas à votre email.");
		form.ins_emailBis.focus();
		return false;
	}else
		return true;
		
}// JavaScript Document
