// JavaScript Document


//Date fin du jeu 5 Aou(07) 2008 à 23h59
var dateActuel = new Date();
var dateDeb = new Date(2008,7,6,00,00,01);
var dateFin = new Date(2008,7,12,23,59,59);
/*if( dateActuel.getTime() >= dateFin.getTime() || dateActuel.getTime() < dateDeb.getTime()){
	document.location.href = "end.php"; 
}*/

if( dateActuel.getTime() >= dateFin.getTime()){
	document.location.href = "end.php"; 
}

Event.observe(window, 'load', function() {			 
    if($('lien_cines'))
	{
		Event.observe('lien_cines', 'click', function() {window.open('http://cinemasgaumontpathe.com','_blank') } );
	}
	
	if($('btn_valider'))
	{
		Event.observe('btn_valider', 'mouseover', function(e) { MyForm.prototype.afficherBouton(e)} );
		Event.observe('btn_valider', 'mouseout', function(e) { MyForm.prototype.afficherBouton(e)} );
		Event.observe('btn_valider', 'click', function() { MyForm.prototype.validation_forms() } );
	}
	
	if($("lien_meet_dave"))
	{
		Event.observe('lien_meet_dave', 'mouseover', function(e) { MyForm.prototype.afficherBouton(e)} );
		Event.observe('lien_meet_dave', 'mouseout', function(e) { MyForm.prototype.afficherBouton(e)} );
		Event.observe('lien_meet_dave', 'click', function() { window.open('http://www.appelezmoidave-lefilm.com','_blank') } );
	}

});	

var MyForm = Class.create();
MyForm.prototype = {
	formParticipation : 'form_participation',
	ecranForm : "ecran_formulaire",
	msgConf : "msg_confirmation",
	boiteWait : "boite_wait",
	
	initialize: function() { },

	afficherBouton : function(e)
	{		
		var ext = (e.type == "mouseover") ? "_2.jpg" : "_1.jpg"; 
		$(e.target.id).src ="images/" + e.target.id + ext; 
	},


	validation_forms : function() {	
		message = this.validation_participation();	
		if (message == 1){
			this.enregistrement();
		}else{
			alert(message);
		}
		return false;
	},

	validation_participation : function(){
		var form = $(this.formParticipation);
	
		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() == ''){
			form.ins_civilite.focus();
			return "Veuillez indiquer votre civilité.";
		}else if (form.ins_nom.value.strip() == ''){
			form.ins_nom.focus();
			return "Veuillez saisir votre nom.";
		}else if (form.ins_prenom.value.strip() == ''){
			form.ins_prenom.focus();
			return 'Veuillez saisir votre prénom.';
		}else if (numVoie == ''){
			form.num_voie.focus();
			return 'Veuillez saisir le numero de la voie où vous habitez.';
		}else if (verifNumVoie.exec(numVoie) == null){
			form.num_voie.focus();
			return "Vérifiez le numéro de la voie. ";
		}else if (form.nom_voie.value.strip() == ''){
			form.nom_voie.focus();
			return 'Veuillez saisir le nom de la voie où vous habitez.';
		}else if (cp == ''){
			form.ins_cp.focus();
			return "Veuillez saisir votre code postal."; 
		}else if (verifCp.exec(cp) == null) {
			form.ins_cp.focus();
			return "Vérifiez votre code postal !";
		}else if (form.ins_ville.value.strip() == ''){
			form.ins_ville.focus();
			return "Veuillez saisir votre ville.";
		}else if (email == ''){
			form.ins_email.focus();
			return "Veuillez saisir votre adresse électronique.";
		}else if (verifEmail.exec(email) == null){
			form.ins_email.focus();
			return "Vérifiez votre adresse électronique.";
		}else if (email !== form.ins_emailBis.value.strip() ){
			form.ins_emailBis.focus();
			return "L'email de vérification ne correspond pas à votre email.";
		}else{
			return 1;
		}
		
	},// JavaScript Document

	getElements : function ()
	{
		var inscription = this.formParticipation;
		var elts = $H($(inscription).serialize(true));

		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();
		
		return elts;
	},

	getElements_ie : function ()
	{
		var form = $(this.formParticipation);
		var elts = new Object();
		
		fields = new Array("ins_civilite", "ins_nom", "ins_prenom", "num_voie", "nom_voie", "ins_cp", "ins_ville", "ins_email", "ins_emailBis", "btn_valider", "ins_telephone");
		for(var i = 0 ; i < fields.length ; i++)
		{
			elts[fields[i]] = $(fields[i]).value;
		}
		
		var checkbox = $(this.formParticipation).getInputs('checkbox');
		checkbox.each(function(elt){
			var val = (elt.checked) ? elt.value.strip() : "0";
			elts[elt.id] =  val;
		})

		return elts;
	},
	
	isNavigator : function(nav)
	{
	//	document.write(navigator.appName + ' - '+ navigator.appVersion );
	//Microsoft Internet Explorer - 4.0 (compatible; MSIE 5.5; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)
		var verif = false;
		switch (nav)
		{
			case "ie5" : 	var tmp = navigator.appName + ' - '+ navigator.appVersion;
							if(tmp == 'Microsoft Internet Explorer - 4.0 (compatible; MSIE 5.5; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)')
							{
								verif  = true;								
							}
							break;
			default :	break;
		}
		return verif;
	},

	enregistrement : function()
	{
		var local = this;		
		var elts = (!local.isNavigator("ie5")) ? this.getElements() : this.getElements_ie() ;
		
		//masquer et afficher des blocs
		$(local.boiteWait).show();
		$(local.formParticipation).hide();
			
		//Rendre inactif les formulaires
		var form1 = $(local.formParticipation);
		form1[form1.disabled ? 'disable' : 'disable']();
		
		new Ajax.Request('pages/traitement.php', {
			method: 'post',
			parameters:elts,
			onFailure : function()
			{
				setTimeout(function(){local.echecEnvoi()}, 5000);
			},
			onComplete: function(transport) {
				if(transport.responseText == 1){
					setTimeout(function(){local.confirmation()}, 5000);
				}else{
					setTimeout(function(){local.echecEnvoi()}, 5000);
				}
			}
		});	
	
	},

	echecEnvoi : function()
	{
		var message = "Désolé, <br>Votre participation n'a pas été prise en compte.<br><br>";
		message += " Veuillez recommencer.";
		this.afficherJeu(message);
	},
	
	confirmation : function()
	{	
		var message = "Bravo !!<br>Votre participation a bien été prise en compte.<br><br>";
		message += "Retrouvez les horaires du film <br> Appelez - moi Dave sur <a href='http://www.cinemasgaumontpathe.com' target='_blank'>www.cinemasgaumontpathe.com</a>";
		this.afficherJeu(message);
	},	
	
	afficherJeu : function(message)
	{
		var inscription = $(this.formParticipation);
		var local = this;
		
		new Effect.BlindUp(local.boiteWait, {
			duration:4,
			beforeStart : function(){  
				$(local.msgConf).update(message);
				$(local.msgConf).show();
				inscription.reset();
				inscription[inscription.enable ? 'enable' : 'enable']();
			},
			afterFinish : function(){ 
				
			}	
		});
	}
}


	
