/* clearTimeOut Keeps the Menu Open */
$clearTimeOut = 0;
// Keep the Menu Open if we're highlighting a sub-menu item
function keep_open()
	{$clearTimeOut = 0;}
// Begin the closing procedure with a countdown
function close_menu($id)
	{
		$clearTimeOut = 1;
		$temp_timeout = setTimeout("close_menu_final('"+$id+"');", 250);					
	}			
// Do the final menu clearing
function close_menu_final($id)
	{
		// Check whether or not we've scrolled over a menu item
		if($clearTimeOut == 1 && ($id.indexOf("sub-menu-") > -1 || $id.indexOf("sub-page-menu-") > -1))
			{
				$use_id = "#"+$id;				
				$($use_id).slideUp({duration: 250});
			}
	}
function switch_slides($current_id, $next_id)
	{	
		$old_post_id = $current_id.replace("image-", "post-");
		$new_post_id = $next_id.replace("image-", "post-");
		
		$($current_id).fadeOut("fast");
		$($next_id).addClass("floatleft");
		$($old_post_id).slideUp("slow");
		
		setTimeout(
			function()
				{
					$($next_id).fadeIn("slow");
					$($new_post_id).slideDown("slow").addClass("feature-post-content").addClass("clearfix");
					$.busy = 0;
				}
		,100);

	}
	
/* Lightbox Gallery Function */
$(function(){$("#gallery > .gallery_image > a").lightBox();});

$(document).ready(function()
	{
		/***********************************************/
		/* All functions for the featured posts Widget */
		$.current_slide = $(".feature-post-image .floatleft").attr("id");
		$.current_slide_no = 1;
		$.busy = 0;
		$.max_clicks  = $(".feature-post-image div").length;
		$("#scroller-right-btn").click(function()
			{
				if($.busy == 0)
					{
						$.busy = 1;
						if($.current_slide_no < $.max_clicks)
							{
								$current_id = "#"+$.current_slide;
								$next_id = "#"+$($current_id).next().attr("id");
								$.current_slide = $($current_id).next().attr("id");
								$.current_slide_no++;
							}
						else
							{
								$current_id = "#"+$.current_slide;
								$next_id = "#"+$(".feature-post-image div:nth-child(1)").attr("id");
								$.current_slide = $(".feature-post-image div:nth-child(1)").attr("id");
								$.current_slide_no = 1;
							}
						switch_slides($current_id, $next_id);
					}
				return false;
			});
		
		$("#scroller-left-btn").live("click", function()
			{
				if($.current_slide_no > 1)
					{
						$current_id = "#"+$.current_slide;
						$next_id = "#"+$($current_id).prev().attr("id");
						$.current_slide = $($current_id).prev().attr("id");	
						$.current_slide_no--;					
					}
				else
					{
						$current_id = "#"+$.current_slide;
						$next_id = "#"+$(".feature-post-image div:nth-child("+$.max_clicks+")").attr("id");
						$.current_slide = $(".feature-post-image div:nth-child("+$.max_clicks+")").attr("id");
						$.current_slide_no = $.max_clicks;
					}
				switch_slides($current_id, $next_id);
				return false;
			});
		$("[id^=feature-link-]").click(function(){
			if($("#feature-content"))
				{
					$id = $(this).attr("id").replace("feature-link-", "")
					$("#feature-content").slideUp("fast", function(){$("#feature-content").load($("#template-directory").html()+"/ajax.php?fetch_feature=1&id="+$id, function(){$("#feature-content").slideDown("fast");});})
					return false;
				}
		});
		/* Center the slider image
		if($(".feature-post-image div img").css("width") !== "960")
			{$(".feature-post-image div img").css("left", (0.5*(960-$(".feature-post-image div img").attr("width")))+"px");} */
		/*************/
		/* Main Menu */
		$("a[id^='main-menu-item-']").mouseover(function(){
			// Start the timeout to keep the menu open
			keep_open()
			// Create the id to ref the submenu
			$sub_menu_id = $(this).attr("id").replace("main-menu-item-", "");
			$id = "sub-menu-"+$sub_menu_id;
			if(document.getElementById($id))
				{			
					$new_sub_menu = "#"+$id;
					
					if($.open_menu !== $new_sub_menu)
						{$(".sub_menu").slideUp("fast");}
				
					// fade in the submenu
					$($new_sub_menu).addClass("sub_menu").slideDown({duration: 100});	
					$.open_menu = $new_sub_menu;
				}
		});
		
		$("a[id^='main-menu-page-item-']").mouseover(function(){
			// Start the timeout to keep the menu open
			keep_open()
			// Create the id to ref the submenu
			$sub_menu_id = $(this).attr("id").replace("main-menu-page-item-", "");
			$id = "sub-page-menu-"+$sub_menu_id;
			if(document.getElementById($id))
				{			
					$new_sub_menu = "#"+$id;
					
					if($.open_menu !== $new_sub_menu)
						{$(".sub_menu").slideUp("fast");}
					// fade in the submenu
					$($new_sub_menu).addClass("sub_menu").slideDown("2000");	
					$.open_menu = $new_sub_menu;
				}
		});
		
		$("[id^='sub-menu-'], [id^='sub-page-menu-']").mouseover(function(){
			// Start the timeout to keep the menu open
			keep_open()														
		});
		$("[id^='sub-menu-'], [id^='main-menu-item-'], [id^='sub-page-menu-'], [id^='main-menu-page-item-']").mouseout(function(){
			// Create the id to ref the submenu
			$sub_menu_id = $(this).attr("id");
			if($sub_menu_id.indexOf("main-menu-item-") > -1)
				{$sub_menu_id = $sub_menu_id.replace("main-menu-item-", "sub-menu-");}
			else if($sub_menu_id.indexOf("main-menu-page-item-") > -1)
				{$sub_menu_id = $sub_menu_id.replace("main-menu-page-item-", "sub-page-menu-");}
			// Start the cloding process
			close_menu($sub_menu_id);				
		});
		
		/********************/
		/* Ajax Comments */
		$("#commentform").submit(function(){return false;});
		
		$("#comments-link").click(function(){			
			$("html").animate({scrollTop: $("#comments").offset().top}, 1000);
			return false;
		});
		$("#comment_submit").live("click", function(){
			// Compile the request location
			$post_page = $("#template-directory").html()+"/functions/ocmx_comment_post.php";
			// Compile all the request details
			$author = $("#author").attr("value");
			$email = $("#email").attr("value");
			$url = $("#url").attr("value");
			$comment = $("#comment").attr("value");
			$twitter = $("#twitter").attr("value");
			$email_subscribe = $("#email_subscribe").attr("checked");
			$post_id = $("#comment_post_id").attr("value");
			$comment_parent_id = $("#comment_parent_id").attr("value");
	
			// Set which area the new comment will end up in
			if($comment_parent_id !== "0" && $comment_parent_id !== "")
				{$new_comments_id = "#new-reply-"+$comment_parent_id;}
			else
				{$new_comments_id = "#new_comments";}
			
			// Fade out the new comment div so that we can fade it in after posting our new comment
			//$($new_comments_id).fadeOut("fast");
			$("#comment-post-alert").fadeIn("slow");
			// Perform the "Magic" which is just a bit of Ajax
			$.post($post_page, { author: $author, email: $email, url: $url, twitter: $twitter, email_subscribe: $email_subscribe, comment: $comment, comment_post_id: $post_id, comment_parent: $comment_parent_id}, 
				function(data) {
					if($.browser.msie)
						{location.reload();}
					else
						{$($new_comments_id).html($($new_comments_id).html()+" "+data).fadeIn("slow");}
					$("#comment-post-alert").fadeOut("fast");
					$("#comment").attr("value", "");
			});
			return false;
		});
		
		$("a[id^='reply-']").live("click", function(){
			// Create the Comment Id and apply it to the comment form
			$comment_id = $(this).attr("id").replace("reply-", "");
			
			// Set which href we're dealing with

			if($.href_id)
				{
					$oldhref = $.href_id;
					$($oldhref).html("Reply");
				}
			$.href_id = "#reply-"+$comment_id;
			
			//Set where exactly the comment form will end up
			$new_location_id = "#form-placement-"+$comment_id;
			
			//Create the Id for the new placement of the comment Form and put it there
			if($($new_location_id).html().toString().indexOf("Leave") == -1)
				{
					$("#comment_form_container").remove().appendTo($new_location_id);
					$($new_location_id).fadeIn("slow");
					$("#comment_parent_id").attr("value", $comment_id);
					// Change href to Cancel
					$($.href_id).html("Cancel Reply");
				}
			else
				{
					$($new_location_id).fadeOut("fast");
					$("#comment_form_container").remove().appendTo("#original_comment_location");
					$("#comment_parent_id").attr("value", "0");
					// Change href back to Reply
					$($.href_id).html("Reply");
				}
			setTimeout(function(){$("html").animate({scrollTop: $(".comment-form-content").offset().top}, 1000);}, 500);
			return false;
		});
		$("#contact_form").submit(function(){
			$err = "";	
			var theForm = document.getElementById("contact_form");
			var e_value = $("#contact_email").attr("value");
			
			if ($("#contact_name").attr("value") == "" || $("#contact_name").attr("value") == "Name")
				{$err = $err + "\n - Enter your name.";}
			if(e_value !== "Email Address" && e_value !== "" && e_value.indexOf("@") !== -1 && e_value.indexOf("@.") == -1 && e_value.indexOf("@@") == -1 && ( e_value.indexOf(",") == -1  && e_value.indexOf("/") == -1 && e_value.indexOf("'") == -1 && e_value.indexOf("&") == -1 && e_value.indexOf("%") == -1 ))
				{}
			else
				{$err = $err + "\n - Enter a valid e-mail address.";}		
			if ($("#contact_subject").attr("value") == "" || $("#contact_subject").attr("value") == "Subject")
				{$err = $err + "\n - Enter a subject title for your message.";}
			if ($("#contact_message").attr("value") == "" || $("#contact_message").attr("value") == "Your Message")
				{$err = $err + "\n - Enter a message.";}
	
			if($err !== "")
				{
					$err = "Please correct the following: \n" + $err;
					alert($err);
					return false
				}			
			else
				{return true;}		  	
		});
		/**********************/
		/* Search Form Clearer */
		$search_criteria_id = "search_criteria";
		$("#"+$search_criteria_id).focus(function(){
			if($("#"+$search_criteria_id).attr("value") == "Search...")
				{$("#"+$search_criteria_id).attr("value", "");}
		});
		
		$("#"+$search_criteria_id).blur(function(){
			if($("#"+$search_criteria_id).attr("value") == "")
				{$("#"+$search_criteria_id).attr("value", "Search...");}
		});
		
		/************************/
		/* Contact Form Clearer */
		$contact_name_id = "contact_name";
		$("#"+$contact_name_id).focus(function(){
			if($("#"+$contact_name_id).attr("value") == "Name")
				{$("#"+$contact_name_id).attr("value", "");}
		});
		
		$("#"+$contact_name_id).blur(function(){
			if($("#"+$contact_name_id).attr("value") == "")
				{$("#"+$contact_name_id).attr("value", "Name");}
		});
					
		$contact_email_id = "contact_email";
		$("#"+$contact_email_id).focus(function(){
			if($("#"+$contact_email_id).attr("value") == "Email Address")
				{$("#"+$contact_email_id).attr("value", "");}
		});
		
		$("#"+$contact_email_id).blur(function(){
			if($("#"+$contact_email_id).attr("value") == "")
				{$("#"+$contact_email_id).attr("value", "Email Address");}
		});
			
		$contact_subject_id = "contact_subject";
		$("#"+$contact_subject_id).focus(function(){
			if($("#"+$contact_subject_id).attr("value") == "Subject")
				{$("#"+$contact_subject_id).attr("value", "");}
		});
		
		$("#"+$contact_subject_id).blur(function(){
			if($("#"+$contact_subject_id).attr("value") == "")
				{$("#"+$contact_subject_id).attr("value", "Subject");}
		});
		$contact_message_id = "contact_message";
		$("#"+$contact_message_id).focus(function(){
			if($("#"+$contact_message_id).attr("value") == "Your Message")
				{$("#"+$contact_message_id).attr("value", "");}
		});
		
		$("#"+$contact_message_id).blur(function(){
			if($("#"+$contact_message_id).attr("value") == "")
				{$("#"+$contact_message_id).attr("value", "Your Message");}
		});
		
		/*************************/
		/* Comments Form Clearer */
		$search_id = "s";	
		$("#"+$search_id).focus(function(){
			if($("#"+$search_id).attr("value") == "Search...")
				{$("#"+$search_id).attr("value", "");}
		});
		
		$("#"+$search_id).blur(function(){
			if($("#"+$search_id).attr("value") == "")
				{$("#"+$search_id).attr("value", "Search...");}
		});
		
		/*************************/
		/* Comments Form Clearer */
		$author_id = "author";	
		$("#"+$author_id).focus(function(){
			if($("#"+$author_id).attr("value") == "Name")
				{$("#"+$author_id).attr("value", "");}
		});
		
		$("#"+$author_id).blur(function(){
			if($("#"+$author_id).attr("value") == "")
				{$("#"+$author_id).attr("value", "Name");}
		});
		
		$email_id = "email";	
		$("#"+$email_id).focus(function(){
			if($("#"+$email_id).attr("value") == "Email Address")
				{$("#"+$email_id).attr("value", "");}
		});
		
		$("#"+$email_id).blur(function(){
			if($("#"+$email_id).attr("value") == "")
				{$("#"+$email_id).attr("value", "Email Address");}
		});
		
		$url_id = "url";		
		$("#"+$url_id).focus(function(){
			if($("#"+$url_id).attr("value") == "Website URL")
				{$("#"+$url_id).attr("value", "");}
		});
		$("#"+$url_id).blur(function(){
			if($("#"+$url_id).attr("value") == "")
				{$("#"+$url_id).attr("value", "Website URL");}
		});
		
		$twitter_id = "twitter";		
		$("#"+$twitter_id).focus(function(){
			if($("#"+$twitter_id).attr("value") == "Twitter Name")
				{$("#"+$twitter_id).attr("value", "");}
		});
		$("#"+$twitter_id).live("blur", function(){
			if($("#"+$twitter_id).attr("value") == "")
				{$("#"+$twitter_id).attr("value", "Twitter Name");}
		});
	});
