ecommerce.lead = {
	setFocus: function() {
		$('cssid_step1').down('input[type=text]').focus();
	},
	
	submitEmail: function(zform) {
		zform = $(zform);
		
		var zinput = zform.down('input[name=volunteer_email]');
		var zdata = zform.serialize();
		
		ecommerce.ajaxmask.showLoader(ecommerce.utils.translate('Vérification en cours...#E-mail is being checked...'));
		
		ret = ecommerce.utils.verifyEmail(zinput.value,true);
		if (!isNaN(ret)) {
			ecommerce.ajaxmask.hideLoader();
			alert(ecommerce.utils.translate('Cette adresse e-mail est incorrecte. Merci de vérifier votre saisie.#This e-mail address is not valid. Please check your input.'));
			zinput.focus();
			return false;
		}
		
		ecommerce.ajaxmask.showLoader(ecommerce.utils.translate('Enregistrement en cours...#E-mail is being processed...'));
		
		new Ajax.Request('/grand-jeu/ajax_lead_callback.php?action=save_volunteer_email',
						 { method: 'post',
						   parameters: zdata,
						   onSuccess: function(transport) {
						   		
						   		ecommerce.ajaxmask.hideLoader();
						   		var res = transport.responseText;
						   		var vals = res.split(':');
						   		var vid = 0;
						   		var md5 = '';
						   		var znext = null;
						   		
						   		switch(vals[0]) {
						   			case 'email_not_valid':
					   					alert(ecommerce.utils.translate('Cette adresse e-mail est incorrecte. Merci de vérifier votre saisie.#This e-mail address is not valid. Please check your input.'));
					   					zinput.focus();
					   					break;
					   				
						   			case 'missing_data':
					   					alert(ecommerce.utils.translate('Donnée(s) manquante(s). Merci de vérifier votre saisie. (#Missing data. Please check your input.(')+vals[1]+')');
					   					zinput.focus();
					   					break;
					   					
					   				case 'email_already_deleted':
					   					alert(ecommerce.utils.translate('Adresse e-mail refusée. Veuillez nous contacter ou utiliser une autre adresse.#E-mail refused. Please contact us or use another e-mail address'));
					   					zinput.focus();
					   					break;
					   					
					   				case 'email_already_active':
					   					znext = $('cssid_step3');
					   					znext.down('div.cssclass_already').show();
					   					znext.down('div.cssclass_new').hide();
					   				case 'ok':
					   					vid = vals[1];
					   					md5 = vals[2];
					   					if ( isNaN(vid) || (!(vid>0)) ) {
											alert(ecommerce.utils.translate('Réponse inattendue de la part de l\'application. Veuillez essayer à nouveau. (#Unexpected response from application. Please try again. (')+res+')');
											if ( znext != null ) {
												znext.down('div.cssclass_already').hide();
												znext.down('div.cssclass_new').show();
											}
						   					break;					   						
					   						
					   					} else {
									   		var zcur = $('cssid_step1');
									   		if ( znext == null ) znext = $('cssid_step2') ;
									   		znext.down('input[name=volunteer_id]').value = vid;
									   		znext.down('input[name=volunteer_md5]').value = md5;
									   		zcur.hide();
									   		znext.show();
									   		znext.down('input[type=text]').focus();
									   	}
					   					break;
					   				
					   				default:
						   				alert(ecommerce.utils.translate('Réponse inattendue de la part de l\'application. Veuillez essayer à nouveau. (#Unexpected response from application. Please try again. (')+res+')');
						   				break;
						   		}
						   		
						   },
						   onFailure: function(transport) {
						   		ecommerce.ajaxmask.hideLoader();
						   		alert(ecommerce.utils.translate('Erreur de l\'application. Veuillez essayer à nouveau.#Application error. Please try again.'));
						   }
						   
						 } );
		
		return false;
	},
	
	submitPersonalData: function(zform) {
		zform = $(zform);
		
		var ztitle = zform.select('input[name=volunteer_title]').find(function(el) { return el.checked==true });
		if (ztitle==null) {
			alert(ecommerce.utils.translate('Veuillez renseigner votre civilité.#Please enter your title.'));
			return false;
		}
		
		var zfirst = zform.down('input[name=volunteer_firstname]');
		zfirst.value = zfirst.value.strip();
		if (!(zfirst.value.length>0)) {
			alert(ecommerce.utils.translate('Veuillez renseigner votre prénom.#Please enter your first name.'));
			zfirst.focus();
			return false;
		}
		
		var zlast = zform.down('input[name=volunteer_lastname]');
		zlast.value = zlast.value.strip();
		if (!(zlast.value.length>0)) {
			alert(ecommerce.utils.translate('Veuillez renseigner votre nom.#Please enter your last name.'));
			zlast.focus();
			return false;
		}
		
		var zday = zform.down('select[name=volunteer_birth_date_day]');
		if (!(zday.selectedIndex>0)) {
			alert(ecommerce.utils.translate('Veuillez renseigner votre date de naissance.#Please enter your birth date.'));
			zday.focus();
			return false;
		}
		
		var zmonth = zform.down('select[name=volunteer_birth_date_month]');
		if (!(zmonth.selectedIndex>0)) {
			alert(ecommerce.utils.translate('Veuillez renseigner votre date de naissance.#Please enter your birth date.'));
			zmonth.focus();
			return false;
		}

		var zyear = zform.down('select[name=volunteer_birth_date_year]');
		if (!(zyear.selectedIndex>0)) {
			alert(ecommerce.utils.translate('Veuillez renseigner votre date de naissance.#Please enter your birth date.'));
			zyear.focus();
			return false;
		}
		
		var ztitle = zform.select('input[name=volunteer_answer]').find(function(el) { return el.checked==true });
		if (ztitle==null) {
			alert(ecommerce.utils.translate('Veuillez répondre à la question !#Please answer the question!'));
			return false;
		}
		
		if (ztitle.value!='2') {
			alert(ecommerce.utils.translate('Mauvaise réponse ! Nous vous donnons une seconde chance !#Bad answer! We give you a second chance!'));
			return false;
		}
		
		var zdata = zform.serialize();
		
		ecommerce.ajaxmask.showLoader(ecommerce.utils.translate('Enregistrement en cours...#Data is being processed...'));
		
		new Ajax.Request('/grand-jeu/ajax_lead_callback.php?action=save_volunteer_personal_data',
						 { method: 'post',
						   parameters: zdata,
						   onSuccess: function(transport) {
						   		ecommerce.ajaxmask.hideLoader();
						   		var res = transport.responseText;
						   		var vals = res.split(':');
						   		var vid = 0;
						   		var md5 = '';
						   		var znext = null;
						   		
						   		switch(vals[0]) {
						   			case 'birth_date_not_valid':
					   					alert(ecommerce.utils.translate('Cette date de naissance est incorrecte. Merci de vérifier votre saisie.#This birth date is not valid. Please check your input.'));
					   					zinput.focus();
					   					break;
					   				
						   			case 'missing_data':
					   					alert(ecommerce.utils.translate('Donnée(s) manquante(s). Merci de vérifier votre saisie. (#Missing data. Please check your input.(')+vals[1]+')');
					   					zinput.focus();
					   					break;
					   					
					   				case 'ok':
					   					vid = vals[1];
					   					md5 = vals[2];
					   					if ( isNaN(vid) || (!(vid>0)) ) {
											alert(ecommerce.utils.translate('Réponse inattendue de la part de l\'application. Veuillez essayer à nouveau. (#Unexpected response from application. Please try again. (')+res+')');
						   					break;					   						
					   						
					   					} else {
									   		var zcur = $('cssid_step2');
									   		znext = $('cssid_step3') ;
									   		znext.down('input[name=volunteer_id]').value = vid;
									   		znext.down('input[name=volunteer_md5]').value = md5;
									   		zcur.hide();
									   		znext.show();
									   		znext.down('input[type=text]').focus();
									   		
									   	}
					   					break;
					   				
					   				default:
						   				alert(ecommerce.utils.translate('Réponse inattendue de la part de l\'application. Veuillez essayer à nouveau. (#Unexpected response from application. Please try again. (')+res+')');
						   				break;
						   		}
						   },
						   onFailure: function(transport) {
						   		ecommerce.ajaxmask.hideLoader();
						   		alert(ecommerce.utils.translate('Erreur de l\'application. Veuillez essayer à nouveau.#Application error. Please try again.'));
						   }
						   
						 } );
		
		return false;
	},
	
	addInvitation: function(za) {
		za = $(za);
		var zcur = $('cssid_step3');
		
		var ztable = zcur.down('table');
		var ztrs = ztable.select('tr');
		var zmoule = ztable.down('tr.cssclass_moule');
		var zclone = zmoule.cloneNode(true);
		zclone.removeClassName('cssclass_moule');
		zclone.down('input[type=text]').addClassName('cssclass_active');
		zclone.down('td').insert( { bottom: ' ' + ztrs.length } );
		zmoule.insert( { before: zclone} );
		zclone.show();
		
		za.next('a.cssclass_play').show();
		
	},
	
	submitInvitations: function(zform) {
		zform = $(zform);
		var zcur = $('cssid_step3');
		
		var zdata = zform.serialize();
				
		ecommerce.ajaxmask.showLoader(ecommerce.utils.translate('Enregistrement en cours...#Data is being processed...'));
		
		new Ajax.Updater(zcur,
						 '/grand-jeu/ajax_lead_callback.php?action=save_volunteer_invitations',
						 { method: 'post',
						   parameters: zdata,
						   onSuccess: function(transport) {
						   		ecommerce.ajaxmask.hideLoader();
						   },
						   onFailure: function(transport) {
						   		ecommerce.ajaxmask.hideLoader();
						   		alert(ecommerce.utils.translate('Erreur de l\'application. Veuillez essayer à nouveau.#Application error. Please try again.'));
						   }
						   
						 } );
		
		return false;
	}
	
} ;