jQuery(document).ready(function() {

	validate = function() {
		jQuery('#f_newsletter input, #f_newsletter select').removeClass('error');
		errors = 0;
		if (!/^([-a-z0-9_\.\+])+@(([-a-z0-9])+\.)+([a-z]{2,6})+$/i.test( jQuery('#f_nl_email').val())) {
			jQuery('#f_nl_email').addClass('error').focus();
			errors++
		}
		if (!jQuery('#f_newsletter input[name=op]:checked').length) {
			errors++
		}
		if (!errors) {
			lists = new Array();
			jQuery('#fs_nl_lists input[type=checkbox]:checked').each(function() {
				lists[lists.length] = jQuery(this).attr('name').replace(/.+_/, '');
			});

			jQuery.ajax({
				url        : jQuery('#f_newsletter').attr('action'),
				cache      : false,
				type       : 'POST',
				data       : {
					op    : jQuery('#f_newsletter input[name=op]:checked').val(),
					email : jQuery('#f_nl_email').val(),
					lists : lists.join(' ')
				},
				beforeSend : function() {
					jQuery('#f_newsletter')
						.html(loading);
				},
				success    : function(html) {
					jQuery('#f_newsletter')
						.replaceWith(html);
				}
			});
		};
		return false;
	};

	jQuery('#f_newsletter .submit').click(validate);
	jQuery('#f_newsletter').submit(validate);
	
	jQuery('#f_newsletter .radio').click(function() {
		jQuery(this).find('input').attr({checked:'checked'});
	});
});
