(function($) { // Compliant with jquery.noConflict()
	

	$.fn.extend({
		
		nlForm: function(){
			
			var jForm = $(this);
			jForm.find('.nl-submit').attr('disabled', '');
			
			jForm.find("input[name='email']").focus(function(){
				if($(this).attr("value")=="inserisci email")
					$(this).attr("value","")
			});
			jForm.find("input[name='email']").blur(function(){
				if($(this).attr("value")=="")
					$(this).attr("value","inserisci email")
			});
			
			jForm.find('.nl-submit').click( function(){
				
			    var jButt = $(this);
	
			    jForm.find('.nl-error-box').hide();
			    jForm.find('.nl-error-box p').remove();
			    jButt.attr('disabled', 'disabled');
			    jButt.attr('value', '...');
				
			    var params = { email:jForm.find("input[name='email']").attr('value') };
			    
				$.getJSON(jForm.find('.nl-service-url').html() +"?"+ $.param(params)+ "&add=true&nome=%20&cognome=%20&callback=?", function(data){
					
					if(typeof data.errorMsgs != 'undefined' && data.errorMsgs.length>0){
						
						for (var i = 0; i < data.errorMsgs.length; i++){
							jForm.find(".nl-error-box").show();
							jForm.find(".nl-error-box").append("<p>"+data.errorMsgs[i][1]+"</p>");
						}
						
						jButt.attr('disabled', '');
						jButt.attr('value', 'VAI');
						
					}else{
						
						jForm.find('*').hide();
						jForm.find('.nl-done, .nl-done *').show();
						
					}			
					
				});
				
				return false;
			});
		},
		
		nlUnsubscribeForm: function(){
			
			var jForm = $(this);
		
			jForm.find('.nl-submit').click( function(){
				
			    var jButt = $(this);

			    jForm.find('.nl-error-box').hide();
			    jButt.attr('disabled', 'disabled');
			    jButt.attr('value', 'Richiesta in corso ...');
				
			    var params = { email:jForm.find("input[name='email']").attr('value') };
			    
				$.getJSON(jForm.find('.nl-service-url').html() +"?"+ $.param(params)+ "&"+ 
						window.location.search.substring(1) +"&callback=?", function(data){
					
					if(typeof data.success != 'undefined' && data.success=='true'){
						
						jForm.find('*').hide();
						jForm.find('.nl-service-msg-done').show();
						
					}else{
						jButt.attr('disabled', '');
						jButt.attr('value', 'Conferma');
						
						jForm.find('.nl-error-box').show();
						jForm.find('.nl-error-box').html("Non è stato possibile rimuovere questa email.");
						
					}			
					
				});
				
				return false;
				
			});
	
		}
	});

	
	
	
})(jQuery); // Compliant with jquery.noConflict()