$(document).ready(function() {
	// Site search box mechanics v.20080716.
	// The following is the mechanics for the site search box to show and hide the default message.
	var site_search_query_message = 'Search the faculty';
	var site_search_query_id = 'site-search-query';
	var site_search_query_focus_class = 'site-search-focus';
	var site_search_query_posted = '';
	var site_search_submit_button_to_link_swap = true; // Toggle whether the submit button should get swapped for a stylable link.
	var site_search_submit_link_id = 'site-search-submit-link';
	var site_search_submit_link_value = $('form.site-search input[type=submit]').attr('value') || $('form.site-search input[type=image]').attr('alt') || $('form.site-search button[type=submit]').text() || 'Go';
	var site_search_submit_link_html = '<a id="' + site_search_submit_link_id + '" href="#' + site_search_query_id + '"><span>' + site_search_submit_link_value + '</span></a>';
	var site_search_submit_button_found = true; // Flag seeded to indicate that a submit button was found.
	// Check if the submit button should be swapped for a stylable link.
	if (site_search_submit_button_to_link_swap)
	{
		// Swap out the old submit button for a link.
		if ($('form.site-search input[type=submit]').length)
		{
			$('form.site-search input[type=submit]').replaceWith(site_search_submit_link_html);
		}
		else if ($('form.site-search input[type=image]').length)
		{
			$('form.site-search input[type=image]').replaceWith(site_search_submit_link_html);
		}
		else if ($('form.site-search button[type=submit]').length)
		{
			$('form.site-search button[type=submit]').replaceWith(site_search_submit_link_html);
		}
		else
		{
			site_search_submit_button_found = false; // No submit button found.
		}
		if (site_search_submit_button_found)
		{
			$('#' + site_search_submit_link_id).click(function(){
				$('form.site-search').submit();
				return false;
			});
			$('#' + site_search_submit_link_id).keyup(function(event){
				if (event.keyCode == 13 || event.keyCode == 32) // Return/enter or space.
				{
					$('form.site-search').submit();
				}
				return false;
			});
			$('#' + site_search_submit_link_id).keydown(function(event){
				if (event.keyCode == 13 || event.keyCode == 32) // Return/enter or space.
				{
					return false;
				}
			});
		}
	}
	$('form.site-search').submit(function(){
		if ($('#' + site_search_query_id).attr('value') == site_search_query_message)
		{
			$('#' + site_search_query_id).attr('value', '');
		}
		return true;
	});
	if ($('#' + site_search_query_id).attr('value') != site_search_query_message)
	{
		if (site_search_query_posted != '')
		{
			$('#' + site_search_query_id).attr('value', site_search_query_posted);
		}
		else
		{
			$('#' + site_search_query_id).attr('value', site_search_query_message);
		}
	}
	$('#' + site_search_query_id).focus(function() {
		if ($(this).attr('value') == site_search_query_message)
		{
			$(this).attr('value', '');
			$(this).parent().addClass(site_search_query_focus_class);
		}
	});
	$('#' + site_search_query_id).blur(function() {
		if (!$(this).attr('value') || $(this).attr('value').replace(/^\s*/, "").replace(/\s*$/, "") == '')
		{
			$(this).attr('value', site_search_query_message);
			$(this).parent().removeClass(site_search_query_focus_class);
		}
	});
});

