

/**
 * @author appel
 */

jQuery(document).ready(function()
{
	jQuery("#gbform").hide();
	$('.warning').remove();
	$.get("shared/token.php",function(txt){
	  $("#gbform").append('<input type="hidden" name="ts" value="'+txt+'" />');
	});

	/**
	 * Preload koppenhovers
	 */
	jQuery.preload(
		['message.on'], {
	    base:'images/',
	    ext:'.png'
	});

//'a[@href^="#gbform"]'

    jQuery("#show-gb-entry").click(function () {
      jQuery("#gbform").slideToggle("slow");
        return false;
    });

			jQuery('#gbform').ajaxForm({						
					target: 		'#gbform',
					beforeSubmit: 	validateForm
			});	
			
			//hide error containers
			jQuery("#name_error").hide();
			jQuery("#email_error").hide();
			jQuery("#message_error").hide();

//			jQuery('.right-column').corner();

		});
		
		function validateForm()
		{
			jQuery("#name_error").empty().hide();
			jQuery("#email_error").empty().hide();
			jQuery("#message_error").empty().hide();
			
			var name 		= jQuery("#name").val();
			var email		= jQuery("#email").val();
			var message		= jQuery("#message").val();
			var mailinglist	= jQuery("#mailinglist:checked").val();
			var hide		= jQuery("#hide:checked").val();

			var errors = 0;
			
			if (name == null || name == '')
			{
				jQuery("#name_error").fadeIn().append("Please fill out your name");
				errors++;
			}
			if (
				( (mailinglist == 1 || hide == 1) && !isEmail(email))
				||
				(email != '' && !isEmail(email))
				)
			{
				jQuery("#email_error").fadeIn().append("This e-mail address is not valid");
				errors++;
			}
			if (message == null || message == '')
			{
				jQuery("#message_error").fadeIn().append("Please fill out a message");
				errors++;
			}
			else if (hasUrl(message))
			{
				jQuery("#message_error").fadeIn().append("Sorry, due to spam no links allowed");
				errors++;
			}
			if (errors > 0)
			{
				//alert ("Errors were found on the form");
				return false;
			}

		}		
		
		function isNumeric(form_value)
		{
			if (form_value.match(/^\d+$/) == null)
				return false;
			else
				return true;
		}

		function isEmail(form_value)
		{
			if (form_value.match(/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/) == null)
				return false;
			else
				return true;
		}

		function hasUrl(form_value)
		{ // /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
			if (form_value.match(/http:\/\/|https:\/\/|www\./) == null)
				return false;
			else
				return true;
		}
