/**************************************
 *	Newsletter
 **************************************/
window.addEvent('domready', function(){
	
	var box = $('newsletterbox');	
	if (box) {
		form =  $('newsletterbox').getElement('form');
		if (!form) return false;
		
		var field = form.getElement('input#nl_email');
		var icon = form.getElement('div.icon');
		var button = form.getElement('button');
		var label = form.getElement('label');
		var valid = true;
		
		var msg = new Element('div', {'style' : 'clear:both; font-weight:bold'});
		msg.injectAfter(icon);
				
		field.addEvent('keyup', function(e){
			var string = field.value;
			var result = string.test(/^[a-z0-9._%-]+@[a-z0-9.-]+\.[a-z]{2,4}$/i);
			if (result) {
				icon.removeClass('error');
				icon.removeClass('required');
				icon.addClass('correct');
				valid = true;
			}
			else {
				icon.removeClass('required');
				icon.removeClass('correct');
				icon.addClass('error');
				valid = false;
			}
		});
		
		button.addEvent('click', function(e){
			new Event(e).stop();
			var email = field.value;
			if(email.length > 0 && valid)
				subscribe(email, msg, field, icon, button, label);
		});
		
		form.addEvent('submit', function(e){
			new Event(e).stop();
			var email = field.value;
			if(email.length > 0 && valid)
				subscribe(email, msg, field, icon, button, label);
		});
	}
});

function subscribe(email, msg, field, icon, button, label)
{
	var jsonRequest = new Request.JSON({
		url: '/' + LANG + '/contact/addtonewsletter/',
		method: 'post',
		data: {
			'email': email
		},
		onSuccess: function(response){
			if (response.result) {
				label.destroy();
				button.destroy();
				field.destroy();
				icon.destroy();
				msg.setStyles({
					'color': '#579F4F',
					'padding-top': '10px'
				});
			}
			else{
				msg.setStyles({
					'color': '#ff0000',
					'padding': '0px'
				});
			}
			msg.innerHTML = response.text;
		}
	}).send();	
}
