// JavaScript Document

//var j = jQuery.noConflict();

function valid_email(str)
{
	var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
	if (filter.test(str))
		return true;
	return false;
}


jQuery(document).ready(function()
{
	
	/******************************************
	* Richard Telford's Javascript 
	* to make the subnav items relocate neatly 
	* when they extend beyond given space
	*******************************************/
	jQuery("ul#nav > li").hover(function()
	{
		var ul = jQuery(this).children("ul");
		var height = ul.height();
		
		// IF HEIGHT GREATER, THEN IT MEANS THE NAV HAS DOUBLED UP
		if(height > 30 && 1 == 2)
		{
			var li = jQuery(ul).children("li");
			var total_width = 0;
			
			// CYCLE THROUGH LI AND ADD WIDTHS TOGETHER TO GET TOTAL
			li.each(function(index, value)
			{
				total_width += jQuery(this).width();	
			});
			ul.width(total_width+1);
			ul.css({right:"0px"});
			ul.css({"margin-right":"15px"});
			
		}
	});
	
	// CODE FOR CONTENT FADER	
	jQuery("#content-slider-images li:gt(0)").hide();
	jQuery("#content-slider-boxes li").hover(function()
	{
		// GET INDEX
		var index = jQuery("#content-slider-boxes li").index(this);
		
		// GET INDEX OF SHOWING ITEM
		jQuery("#content-slider-images li").each(function(i)
		{
			if(jQuery(this).css("display") != "none")
			{
				index_visible = i;
			}
		});
		
		// FADE OUT/IN THE IMAGES ACCORDINGLY
		/*jQuery("#content-slider-images li:eq("+index_visible+")").fadeOut(200);
		jQuery("#content-slider-images li:eq("+index_visible+")").fadeOut(200);*/
		
		jQuery("#content-slider-images li:eq("+index_visible+")").hide();
		jQuery("#content-slider-images li:eq("+index+")").show();
	},
	function()
	{
	
	});
	
	/******
	* Rich's Ajax Newsletter signup code
	*******/
	jQuery("#newsletter-signup-form").submit(function()
	{
		if(!jQuery("#newsletter-confirm").attr("checked"))
		{
			alert("You must agree to terms and conditions to sign up for a newsletter");
		}
		else if(!valid_email(jQuery("input[name=newsletter]").val()))
		{
			alert("You must supply a valid email address to sign up for a newsletter");
		}
		else
		{
			var params = "";
			jQuery("#newsletter-signup-form input,#newsletter-signup-form textarea").each(function()
			{
				params += "&"+jQuery(this).attr("name")+"="+jQuery(this).val();
			});
			
			// CHECK VALID EMAIL ADDRESS
			jQuery.ajax({
				type: "post",
				url: "/wp-content/themes/nhs-nps/rpc.php",
				data: "action=newsletter-signup"+params,
				dataType: "json",
				success: function(data)
				{
					if(data.status == "true")
					{
						jQuery("#newsletter-signup-form input[name=signup]").hide();
						jQuery("#newsletter-signup-form .message-success").fadeIn();
						
						jQuery("#newsletter-confirm").attr("checked", false);
						jQuery("input[name=newsletter]").val("");
					}
				}
			});
		}
		
		return false;
	});
	
	/******
	* Rich's Ajax Referral form code
	*******/
	jQuery("#self-referral").submit(function()
	{
                //@id 2010 code moved to plugins/ians-mods/frontend/self-assessment.
                //reason: sorry mate, told page needs to be accessible (no dependance on JS), so can't depend on AJAX. May as well just use POST :)
                return true;
		
		var params = "";
		jQuery("#self-referral input,#self-referral textarea").each(function()
		{
			params += "&"+jQuery(this).attr("name")+"="+jQuery(this).val();
		});
		
		// CHECK VALID EMAIL ADDRESS
		jQuery.ajax({
			type: "post",
			url: "/wp-content/themes/nhs-nps/rpc.php",
			data: "action=self-referral"+params,
			dataType: "text",
			success: function(data)
			{
				alert(data);
			}
		});
		
		
		return false;
	});
	
	if(jQuery.browser.msie)
	{
		if(jQuery.browser.version == "6.0")
		{
			jQuery("ul#nav > li").hover(function()
			{
				var ul = jQuery(this).children("ul");
				var height = ul.height();
				
				//ul.css({left:0});
				
				jQuery("ul#nav li ul li:first").css({backgroundPosition: "15px 0px"});
			});
		}
		
		//jQuery("ul#nav > li > ul > li:first").addClass("first");
			
	}
	
	jQuery("ul#nav li ul").each(function(i,v)
	{
		jQuery(this).children("li:first").addClass("first");
		jQuery(this).children("li:last").addClass("last");
	});
	
	jQuery("ul#nav li ul").each(function(i,v)
	{
		jQuery(this).children("li:first").css({backgroundPosition: "15px 0px"});
	});
});
