

function openNewsletter() {
	
	location.href = "/bu2/service/newsletter.jsp";
	
	return;
	
	obj = $("#newsletterAnmeldung").find("input[name='web:email']");
	if($(obj).val() === '') {
		$(obj).val('E-Mail')
	}
	
	obj = $("#newsletterAnmeldung").find("input[name='web:firstname']");
	if($(obj).val() === '') {
		$(obj).val('Vorname')
	}	
	
	obj = $("#newsletterAnmeldung").find("input[name='web:lastname']");
	if($(obj).val() === '') {
		$(obj).val('Nachname')
	}

	$('#NewsletterLayer').show();
	$('#NewsletterLayer .content').ifixpng();
	
}

function closeNewsletter() {
	$('#NewsletterLayer').hide();
	$("#AnmeldungDetails").hide();
	$("#Anmeldung").show();
}

function cleanNewsletterLayerFormInput(obj, defaultValue) {
	if(obj.value == defaultValue) {
		obj.value = '';
	}
}

if(window.loadFirebugConsole) {
    window.loadFirebugConsole();
}
function DEBUG(string) {
   
	return;
	
	if(window.loadFirebugConsole) {
        console.log(string);
    }
} 			

jQuery.validator.addMethod("default_vorname", function(value, element) { 
	  return value != "Vorname";
}, "Bitte geben Sie Ihren Vornamen an.");

jQuery.validator.addMethod("default_nachname", function(value, element) { 
	  return value != "Nachname";
}, "Bitte geben Sie Ihren Nachname an.");	

jQuery.validator.addMethod("default_birthdate", function(value, element, params) { 
		var datum = value;
		check = function(){ 
			datum = datum.toLowerCase(); 
			if($.trim(datum) == 'tt.mm.jjjj') {
				return true;
			} 
			else if(/^(\d{2}\.\d{2}\.\d{4})?$/.test(datum)) {
				return true;
			}
			return false;
		} ;
		return this.optional(element) ||  check();///^(\d{4}-\d{2}-\d{2})?$/.test(value);
}, "Bitte geben Sie Ihr Geburtsdatum im Format TT.MM.JJJJ ein oder lassen Sie das Feld leer.");

$(document).ready(function() { 

	$("#newsletterAnmeldung").find("input[name='sendAsPost']").remove();



    $("#destination1").change(function() { 
        var message_index 	 
        message_index1 = $("#destination1").val(); 
		message_index2 = $("#destination2").val(); 
		message_index3 = $("#destination3").val(); 
		//alert(message_index);	
		showAll();
		hideChanges();
		$("#destination2").find("option[@value="+message_index1+"]").hide();
		$("#destination3").find("option[@value="+message_index1+"]").hide();			
    }); 
	$("#destination2").change(function() { 
        var message_index 	 
        message_index1 = $("#destination1").val(); 
		message_index2 = $("#destination2").val(); 
		message_index3 = $("#destination3").val(); 
		//alert(message_index);	
		showAll();
		hideChanges();
		$("#destination1").find("option[@value="+message_index2+"]").hide();
		$("#destination3").find("option[@value="+message_index2+"]").hide();			
    }); 
	$("#destination3").change(function() { 
        var message_index 	 
        message_index1 = $("#destination1").val(); 
		message_index2 = $("#destination2").val(); 
		message_index3 = $("#destination3").val(); 
		//alert(message_index3);	
		showAll();
		hideChanges();					
		$("#destination1").find("option[@value="+message_index3+"]").hide();
		$("#destination2").find("option[@value="+message_index3+"]").hide();			
    }); 	
	function showAll() {
		$("#destination1").find("option").show();
		$("#destination2").find("option").show();
		$("#destination3").find("option").show();
	}				
	function hideChanges() {
		$("#destination1").find("option[@value="+message_index2+"]").hide();
		$("#destination1").find("option[@value="+message_index3+"]").hide();
		$("#destination2").find("option[@value="+message_index1+"]").hide();
		$("#destination2").find("option[@value="+message_index3+"]").hide();					
		$("#destination3").find("option[@value="+message_index1+"]").hide();
		$("#destination3").find("option[@value="+message_index2+"]").hide();						
	}
}); 	

$(document).ready(function() {				
	$("#newsletterAnmeldung").validate({
		rules: {
			"web:firstname":  {
				minlength: 1,
				default_vorname: 'Vorname'
			},
			"web:lastname":  {
				minlength: 1,
				default_nachname: 'Nachname'
			},
			"web:gender": "required",
			"agb": "required", 
			"web:email": {
				required: true,
				email: true
			}
		},
		messages: {
			"web:gender": "Bitte geben Sie eine Anrede an.",	
			//"web:firtsname": "Bitte geben Sie Ihren Vornamen an.",	
			//"web:lastname": "Bitte geben Sie Ihren Nachnamen an.",			
			"agb": "Bitte akzeptieren Sie die Datenschutzbestimmungen.",
			"web:email": "Bitte geben Sie eine g&uuml;ltige E-Mail-<br />Adresse an."
		},
		errorLabelContainer: $("#newsletterAnmeldung div.error"),
		submitHandler: function() { 
			
			$("#newsletterAnmeldung div.error").css('display', 'none').html('');

			//http://www.demo.comnos.de/mp/onlinedialog/tco/buc/layer_subscription?msg%3Atype=web&web%3Aid_tenant=3&onerror=%2Fcontent%2Fpcr%2Ftco%2Fbuc%2Fsub_layer_error.htm&web%3Aemail=michael.marchetti@comnos.com&web%3Agender=1&web%3Afirstname=Michael&web%3Alastname=Marchetti
			
			
			
			
			var url = "/bu2/ajaxProxy.do?http://www.demo.comnos.de/mp/onlinedialog/tco/buc/layer_subscription" +  escape("?" + $("#newsletterAnmeldung").serialize());
			
			DEBUG(url);

			$.get(url, function(response){	
				
				//DEBUG(response);
				
				response = $.trim(response);
				var regexpUserId = /^[0-9]+$/;
				exp_response = response.split("=");
				exp_response[0] = exp_response[0] ? $.trim(exp_response[0]) : false;
				exp_response[1] = exp_response[1] ? $.trim(exp_response[1]) : false;
	
				if(response === 'ALREADYEXISTING') {
					errorMsg = '<label generated="true" class="error" style="display:block;">Ihre Emailaresse ist bereits angemeldet.</label>';
					$("#newsletterAnmeldung div.error").css('display', 'block').html(errorMsg);
					//alert(response);
					return false;
				}
				if(response === 'MISUSE') {
					errorMsg = '<label generated="true" class="error" style="display:block;">Falscher Gebrauch (MISUSE)!</label>';
					$("#newsletterAnmeldung div.error").css('display', 'block').html(errorMsg);
					//alert(response);
					return false;
				}
				else if(response === 'ERROR') {
					errorMsg = '<label generated="true" class="error" style="display:block;">Es ist ein Fehler aufgetreten.</label>';
					$("#newsletterAnmeldung div.error").css('display', 'block').html(errorMsg);
					//alert(response);
					return false;
					
				}
				else if(exp_response[0] && exp_response[1] && exp_response[0] === 'SUCCESS' && regexpUserId.test(exp_response[1])) {
					DEBUG("USERID: " + exp_response[1]);
					$('#newsletterAnmeldungDetailUserid').val(exp_response[1]);
					$("#Anmeldung").hide();
					$("#AnmeldungDetails").show();	
				}
				return false;	
			});
		}
	});
	
	$("#newsletterAnmeldungDetail").validate({

		rules: {
			"web:birthdate":  {
				default_birthdate: 'TT.MM.JJJJ'
			}
		},
		errorLabelContainer: $("#newsletterAnmeldungDetail div.error"),
		submitHandler: function() { 
			submitNewsletterDetails();
		}
	});
	
	

});

function submitNewsletterDetails() {
	
	/*
	  ToDo: Auf UserId überprüfen.
	  
	*/
	
	var query = new Array();

	var form = $("#AnmeldungDetails");
	
	var i = 0;
	
	query[i++] = $(form).find("input[name='web:type']").serialize();
	query[i++] = $(form).find("input[name='web:id_tenant']").serialize();
	query[i++] = $(form).find("input[name='web:userid']").serialize();

	obj = $(form).find("input[name='web:zipcode']");
	if(obj.val() !== 'Ihre PLZ') {
		query[i++] = obj.serialize();
	}
	
	obj = $(form).find("select[name='web:country']");
	if(obj.val() !== '') {
		query[i++] = obj.serialize();
	}
	
	obj = $(form).find("input[name='web:birthdate']");
	datum = obj.val();
	if(datum !== '' && datum.toLowerCase() !== 'tt.mm.jjjj') {
		datum = datum.split('.');
		query[i++] = 'web:birthdate=' + datum[2] + '-' + datum[1] + '-' + datum[0];
	}

	obj = $(form).find("input[name='web:preference_1']");
	if(obj.val() !== '' && obj.serialize()) {
		query[i++] = obj.serialize();
	}
	
	obj = $(form).find("input[name='web:preference_2']");
	if(obj.val() !== '' && obj.serialize()) {
		query[i++] = obj.serialize();
	}
	
	obj = $(form).find("input[name='web:preference_3']");
	if(obj.val() !== '' && obj.serialize()) {
		query[i++] = obj.serialize();
	}
	
	obj = $(form).find("input[name='web:preference_4']");
	if(obj.val() !== '' && obj.serialize()) {
		query[i++] = obj.serialize();
	}
	
	obj = $(form).find("input[name='web:preference_5']");
	if(obj.val() !== '' && obj.serialize()) {
		query[i++] = obj.serialize();
	}
	
	obj = $(form).find("input[name='web:preference_6']");
	if(obj.val() !== '' && obj.serialize()) {
		query[i++] = obj.serialize();
	}
	
	obj = $(form).find("select[name='web:favdestination_1']");
	if(obj.val() !== '') {
		query[i++] = obj.serialize();
	}				
	
	obj = $(form).find("select[name='web:favdestination_2']");
	if(obj.val() !== '') {
		query[i++] = obj.serialize();
	}				
	
	obj = $(form).find("select[name='web:favdestination_3']");
	if(obj.val() !== '') {
		query[i++] = obj.serialize();
	}

	
	DEBUG("--> http://www.demo.comnos.de/mp/onlinedialog/tco/buc/layer_editprofile?" + query.join("&"));
	
	var url = "/bu2/ajaxProxy.do?http://www.demo.comnos.de/mp/onlinedialog/tco/buc/layer_editprofile" + escape("?" + query.join("&"));
	
	
	
	$.get(url, function(response){	
		DEBUG(response);
		response = $.trim(response);
		exp_response = response.split("=");
		exp_response[0] = exp_response[0] ? $.trim(exp_response[0]) : false;
		exp_response[1] = exp_response[1] ? $.trim(exp_response[1]) : false;
		if(exp_response[0] === 'SUCCESS') {
			msg = '<label generated="true" class="notice" style="display:block;color:#008b00;padding:15px 0;">Ihre Daten wurden erfolgreich übermittelt.</label>';
			$(form).find("div.noticeMsg").css('display', 'block').html(msg);
			return false;
		}
		
		if(response === 'ERROR') {
			msg = '<label generated="true" class="notice" style="display:block;color:#ff0000;padding:15px 0;">Es ist ein Fehler aufgetreten.</label>';
			$(form).find("div.noticeMsg").css('display', 'block').html(msg);
			return false;
		}		
		
		return false;	
	});					

	
}
			
			
			
			
			
