function manageLoginForms()
{
	if (window.loggedIn == true)
		return true;;

	// show/hide the login box
	$j("#loginLink").click(function(e) {
		e.preventDefault();
		$j("#loginForm").toggle();
		$j("#loginLink").toggleClass("menu-open");
	});

	$j("#loginForm").mouseup(function() {
		return false;
	});

	$j(document).mouseup(function(e) {
		if($j(e.target).parent("a#loginLink").length==0) {
			$j("#loginLink").removeClass("menu-open");
			$j("#loginForm").hide();
		}
	});

	$j('.loginForm').each(function() {

		var usernameLabel = $j('.usernameLabel:first-child', this);
		var passwordLabel = $j('.passwordLabel:first-child', this);
		
		var usernameField = $j('.usernameField', this);
		var passwordField = $j('.passwordField', this);

		// replace labels with in-input text
		usernameLabel.hide();
		passwordLabel.hide();
		
		if (!usernameField.val() || usernameField.val() == '')
		{
			usernameField.val(usernameLabel.text());
		}
		usernameField.focus(function() {
			if (usernameField.val() == usernameLabel.text())
				usernameField.val('');
			
			usernameField.blur(function() {
				if (usernameField.val() == '')
					usernameField.val(usernameLabel.text());
			});
		});

		// magicly change the password field to/from a password/text field
		if (!passwordField.val() || passwordField.val() == '')
		{
			passwordField.val(passwordLabel.text());
			passwordField.type = 'text';
		}

		passwordField.focus(function() {
			if (passwordField.val() == passwordLabel.text())
				passwordField.val('');
			this.type = 'password';

			passwordField.blur(function() {
				if (passwordField.val() == '')
				{
					this.type = 'text';
					passwordField.val(passwordLabel.text());
				}
			});
		});
		
	});
}

function manageSearchForms()
{
	$j('.searchForm').each(function() {
	  var labelText = $j('label:first-child', this).text();
	  var inputField = $j('input:text', this);
	  var submitField = $j('input:submit', this);
	  
	  // replace labels with in-input text
	  $j('label:first-child', this).hide();
	  $j(inputField).val(labelText);
	  
	  $j(inputField).focus(function() {
		  if ($j(this).val() == labelText)
			  $j(this).val('');
	  });
	  $j(inputField).blur(function() {
		  if ($j(this).val() == '')
			  $j(this).val(labelText);
	  });
	  
	  $j(submitField).click(function() {
		  if ($j(inputField).val() == labelText)
			  $j(inputField).val('');
	  });
	});
}

function sideNavigation()
{
	// Don't slide down the side menu. Just jump to the section
	return;
	
	$j('#categoryNav .category').each(function() {
		$j(this).click(function() {
			if ($j(this).hasClass('active'))
			{
				return;
			}
			
			if ($j('ul.subCats', this).hasClass('hidden'))
			{
				$j('ul.subCats', this).slideDown();
				$j('ul.subCats', this).removeClass('hidden');
			}
			else
			{
				$j('ul.subCats', this).slideUp();
				$j('ul.subCats', this).addClass('hidden');
			}
			
		});
	});
	
}

function topNavigation()
{
	$j('#topNavContainer > li').each(function() {
		$j(this).has('ul').each(function() {
			$j(this).hover(
				function () {
					$j('span' , this).addClass('hover');
					$j('ul', this).show();
				},
				function () {
					$j('span', this).removeClass('hover');
					$j('ul', this).hide();
				}
			);
		});
	});
}

function mobileLoginForm()
{
	// show login form
	$j('#loginForm').show();
}

function toggleMobileMenu()
{
	$j('#mobileNav').toggle();
	if ($j('#mobileNav').css('display') == 'none')
	{
		$j('#mobileNavLink').text('Menu');
		$j('#mobileNavLink').removeClass('close');
		$j('#mobileNavLink').addClass('menu');
	}
	else
	{
		$j('#mobileNavLink').text('Close');
		$j('#mobileNavLink').removeClass('menu');
		$j('#mobileNavLink').addClass('close');
	}
}

function manageContentForms()
{
	var containerWidth = $j(window).width();
	// var containerWidth = $j('#content').width();

	$j('#content fieldset').each(function(){
		// legend width
		var legendPaddingLeft = $j('legend', this).css('padding-left');
		var legendPaddingRight = $j('legend', this).css('padding-right');
		legendPaddingLeft = legendPaddingLeft.substr(0, legendPaddingLeft.length - 2);
		legendPaddingRight = legendPaddingRight.substr(0, legendPaddingRight.length - 2);
		var legendPadding = parseInt(legendPaddingLeft) + parseInt(legendPaddingRight);
		
		var contentPaddingLeft = $j('#content').css('padding-left');
		var contentPaddingRight = $j('#content').css('padding-right');
		contentPaddingLeft = contentPaddingLeft.substr(0, contentPaddingLeft.length - 2);
		contentPaddingRight = contentPaddingRight.substr(0, contentPaddingRight.length - 2);
		var contentPadding = parseInt(contentPaddingLeft) + parseInt(contentPaddingRight);
		
		var padding = legendPadding + contentPadding;
		
		$j('legend', this).width(containerWidth - padding);
		
		// select field width
		$j('select', this).css('max-width', containerWidth - padding);
	});
}

$j('document').ready(function()
{
	manageLoginForms();
	manageSearchForms();
	topNavigation();
	sideNavigation();
	
	/* 1px = desktop, 2px = mobile */
	if ($j('#styleSheet').css('width') == '2px')
	{
		manageContentForms();
		
		$j(window).resize(function() {
			manageContentForms();
		});
	}
});

