var offertaLink;
var offertaId;
$(document).ready(function () {

	
	$("a.topmodal").click(function (e) {
		$("#topflash").hide();
		offertaLink = this.href;
		offertaId = this.id;
		$.get("/tools/pre-offerta.php?j", function(check){	
		
				$(check).modal({
					close: false,
					overlayId: 'modalOverlay',
					containerId: 'modalContainer',
					iframeId: 'modalIframe',
					onOpen: offerta.open,
					onShow: offerta.show,
					onClose: offerta.close
				});
				
		});
		//
		return false;
	});
	
	$("a.offerta_link").click(function (e) {
                trackClickOfferta(this.id);
		window.open("/travel/offerta_link.php?id=" + this.id);
		return false;
	});
});

var offerta = {
	message: null,
	open: function (dialog) {//		alert("open");
		dialog.overlay.fadeIn(200, function () {
			dialog.container.fadeIn(200, function () {
			});
		});
	},
	show: function (dialog) {//		alert("show");
		
		$("#modalContainer #iscritto input[type='image']").click(function (e) {
			e.preventDefault();
	
			if (offerta.validate("#iscrittoemail")) {		// validate form
			
				$('#modalContainer #iscritto .message').text("");
				$('#modalContainer #iscritto form').css("opacity", "0.5");				
				$('#modalContainer #iscritto .loading').fadeIn(200, function () {
					$.ajax({
						url: '/tools/pre-offerta.php',
						data: $('#modalContainer #iscritto form').serialize() + '&action=iscritto',
						dataType: 'html',
						complete: function (xhr) {
							msg = xhr.responseText;
								
							if (msg == "OK"){							
								$('#modalContainer #iscritto form').fadeOut(200);
								$('#modalContainer #iscritto .vai').html("Sei stato riconosciuto,<br /><a href=\"/travel/offerta_link.php?id=" + offertaId + "\" onclick=\"trackClickOfferta('" + offertaId + "');vaiSottocategoria();\" target=\"_blank\">Clicca qui per andare all'offerta</a>").fadeIn(200);
								
								/*
								$("a.topmodal").addClass("offerta_link");
								$("a.topmodal").removeClass("topmodal");
								*/
							} else {
								$('#modalContainer #iscritto .message').html("Email non presente<br>Registrati ora!").fadeIn(200);
								$("#noniscrittoemail").attr("value", $("#iscrittoemail").val()); 
								$("#noniscrittoemail").focus();
								$('#modalContainer #iscritto form').css("opacity", "inherit");
							}
						},
						error: offerta.error
					});
				});
			}
			else {			
				 			offerta.showError("#iscritto");
			}
		});	// iscritto
		
		$("#modalContainer #noniscritto input[type='image']").click(function (e) {
			e.preventDefault();
	
			if (offerta.validate("#noniscrittoemail")) {		// validate form
			
				$('#modalContainer #noniscritto .message').text("");
				$('#modalContainer #noniscritto form').css("opacity", "0.5");				
				$('#modalContainer #noniscritto .loading').fadeIn(200, function () {
					$.ajax({
						url: '/tools/pre-offerta.php',
						data: $('#modalContainer #noniscritto form').serialize() + '&action=noniscritto',
						dataType: 'html',
						complete: function (xhr) {
							msg = xhr.responseText;
								
							if (msg == "OK"){							
								$('#modalContainer #noniscritto form').fadeOut(200);
								
								// 
								location.href = "/travel/utente.registrazione.success.php?email=" + $("#noniscrittoemail").val() + "&off=" + offertaId;

							} else if (msg == "REGISTRATO"){
								$('#modalContainer #noniscritto form').fadeOut(200);
								$('#modalContainer #noniscritto .vai').html("Eri gi&agrave; registrato, non c'&egrave; problema.<br /><a href=\"/travel/offerta_link.php?id=" + offertaId + "\" onclick=\"trackClickOfferta('" + offertaId + "');window.location.reload();\" target=\"_blank\">Clicca qui per andare all'offerta</a>.").fadeIn(200);
								
							} else {
								$('#modalContainer #noniscritto .message').html("Verifica i dati inseriti").fadeIn(200);
								$("#nonnoniscrittoemail").attr("value", $("#iscrittoemail").val()); 
								$("#noniscrittoemail").focus();
								$('#modalContainer #noniscritto form').css("opacity", "inherit");
							}
						},
						error: offerta.error
					});
				});
			}
			else {			
				 			offerta.showError("#noniscritto");
			}
		});	// noniscritto
	},
	close: function (dialog) {//	alert("close");
	
		$("#topflash").show();
		dialog.content.fadeOut(200, function () {
			dialog.container.fadeOut(200, function () {
				dialog.overlay.fadeOut(200, function () {
					$.modal.remove(dialog);
				});
			});
		});
	},
	error: function (xhr) {
		alert(xhr.statusText);
	},
	validate: function ( s ) {
		offerta.message = '';
		var email = $(s).val().toLowerCase();//		alert("validate " + s + ":" + email);
		if (!email) {
			offerta.message += 'Email mancante ';
		} else {			// Regex from: http://regexlib.com/REDetails.aspx?regexp_id=599
			//	^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@(([0-9a-zA-Z])+([-\w]*[0-9a-zA-Z])*\.)+[a-zA-Z]{2,9})$
			var filter = /^((?:[a-z0-9])(?:[a-z0-9_\-\.]+)(?:[a-z0-9_]))@(?:(?:[a-z0-9\-]+\.)+)[a-z]{2,4}$/;
			if (!filter.test(email)) {
				offerta.message += 'Email non valida ';
			}
		}

		if (offerta.message.length > 0) {
			return false;
		}	else {
			return true;
		}
	},
	showError: function ( s ) {//		alert(offerta.message);
		$('#modalContainer ' + s + ' .message').text(offerta.message).fadeIn(200);
	}
};

/**
 * Traccia il click su un'offerta con Analytics
 */
function trackClickOfferta(offertaId) {
    pageTracker._trackPageview("/outbound/offerta/" + offertaId );
}

