﻿function validateText(id)
{
	if($('#' + id).length)
		return !trim($('#' + id).val()).length == 0;
		
	return true;
}

function trim(str, chars)
{
    return ltrim(rtrim(str, chars), chars);
}

function ltrim(str, chars)
{
    chars = chars || "\\s";
    return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}

function rtrim(str, chars)
{
    chars = chars || "\\s";
    return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}

function validateTextLength(id, minlen, maxlen)
{
	if($('#' + id).length)
	{
		var l = $('#' + id).val().length;
	
		if(l < minlen || l > maxlen)
			return false;
	}
	
	return true;
}

function validateEmail(id)
{
	if(!validateTextLength(id, 6, 255))
		return false;

	if($('#' + id).length)
	{
		var filter = /^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i;
		return filter.test($('#' + id).val());
	}
	
	return true;
}

function valNewsletter()
{
	var email = validateText('newsletter-email');
	var user_email = validateEmail('newsletter-email');
		
	if(!email)
	{
		$('#newsletter-msg').html('Du skal indtaste din e-mail adresse.');
		$('#newsletter-msg').attr('class', 'bad');
		$('#newsletter-msg').fadeIn('def');
		
		return false;
	}
	else
	{
		if(!user_email)
		{
			$('#newsletter-msg').html('Den indtastede e-mail adresse er ikke gyldig.');
			$('#newsletter-msg').attr('class', 'bad');
			$('#newsletter-msg').fadeIn('def');
			
			return false;
		}
		
		hideMessage();
		$('#newsletter-submit').attr('value', 'Vent..');
		$('#newsletter-submit').attr('disabled', 'true');
		
		$.getJSON("/wp-content/themes/tasksv4/js/newsletter.php?e=" + $('#newsletter-email').val(),
		function(json)
		{
			if(json.result.code == 2)
			{
				$('#newsletter-msg').html('Tak for din tilmelding, ' + $('#newsletter-email').val() + '!');
				$('#newsletter-msg').attr('class', 'good');
				$('#newsletter-msg').fadeIn('def');
				
				$('#newsletter-email').val('');
				$('#newsletter-submit').attr('value', 'Tilmeld');
				$('#newsletter-submit').attr('disabled', '');
			}
			else
			{
				$('#newsletter-msg').html('Kunne desværre ikke tilmelde dén adresse.<br/>Prøv igen eller en anden adresse.');
				$('#newsletter-msg').attr('class', 'bad');
				$('#newsletter-msg').fadeIn('def');
				
				$('#newsletter-submit').attr('value', 'Tilmeld');
				$('#newsletter-submit').attr('disabled', '');
			}
        });	
		
		return false;
	}
}