// load typekit

try{Typekit.load();}catch(e){}

// when ready

$(document).ready(function() {

	$('.ie .page h1').each(function() {

		$(this).width( $(this).width() + 10 );

		});

	// nutrition table overlays

	$('.product a[href^="#table"]').fancybox({
		'padding' : 0,
		'transitionIn' : 'elastic',
		'transitionOut' : 'fade',
		'speedIn' : 300, 
		'speedOut' : 100, 
		'overlayColor' : '#000',
		'overlayOpacity' : 0.3,
		});

	$('input[placeholder]').placeholder();

	});

// when finished loading

$(window).load(function () {

	// lettering

	var letteringCount = -15;
	var letteringTimer = setInterval(letteringMethod, 200);

	function letteringMethod() {
		letteringCount++;
		if(letteringCount > (7 + 15) ) clearInterval(letteringTimer);
		$('#focus hgroup h1 > *:nth-child(' + letteringCount + ')').addClass('active');
		}

	// pieces

	var pieceCount = -35;
	var pieceTimer = setInterval(pieceMethod, 100);

	function pieceMethod() {
		pieceCount++;
		if(pieceCount > (6 + 35) ) clearInterval(pieceTimer);
		$('#focus hgroup h1 .o *:nth-child(' + pieceCount + ')').fadeIn(500);
		}

	// nav

	var navCount = 0;
	var navTimer = setInterval(navMethod, 200);

	function navMethod() {
		navCount++;
		if(navCount > 5) clearInterval(navTimer);
		$('#sidebar nav > *:nth-child(' + navCount + ')').addClass('active');
		}

	// other bits

	setTimeout(function() {
		$('#focus h2').addClass('active');
		}, 1700);
	setTimeout(function() {
		$('#focus hgroup h3').addClass('active');
		}, 1800);
	setTimeout(function() {
		$('#focus').addClass('open');
		$('#focus > footer').addClass('active');
		$('#sidebar aside').addClass('active');
		}, 1900);

	// watermarks

	setTimeout(function() {

		var watermarkCount = 0;
		var watermarkTimer = setInterval(watermarkMethod, 600);

		function watermarkMethod() {
			watermarkCount++;
			if(watermarkCount > 3) clearInterval(watermarkTimer);
			$('img.home-0' + watermarkCount).fadeIn(500);
			}

		}, 4000);

	// nav handling

	$('nav a').click(function(e) {

		v = $('nav a span').html().replace(/&nbsp;/g,'');
		$('nav a span').html(v);

		$('nav a span').contents().appendTo( $('nav a span').parent() );
		$('nav a span').remove();

		$(this).html('<span>&nbsp;' + $(this).text() + '&nbsp;</span>');

		});

	$('menu a').click(function(e) {
		$('menu a').removeAttr('class');
		$(this).addClass('current');
		});

	// form validation - signup

	$("#signup-form").validate({
		rules: {
			fname: "required",
			lname: "required",
			gender: "required",

			day: "required",
			month: "required",
			year: "required",

			mobile: "required",
			phone: "required",
			street: "required",
			town: "required",
			state: "required",
			postcode: "required",
			email: {
				required: true,
				email: true
				},
			usually: "required",
			order: "required",
			about: "required",
			hearabout: "required"
			}
		});

	// form validation - franchise

	$("#franchise-form").validate({
		rules: {
			firstname: "required",
			lname: "required",
			surname: "required",
			email: {
				required: true,
				email: true
				},
			emailconfirm: {
				required: true,
				email: true,
				equalTo: "#email"
				},

			mobile: "required",
			postcode: "required",

			state: "required",
			budget: "required",
			timeframe: "required",
			location: "required",
			statedesired: "required",
			hours: "required",
			methodhear: "required",
			methodarrive: "required"
			}
		});

	// form validation - jobs

	$("#jobs-form").validate({
		rules: {
			firstname: "required",
			surname: "required",
			email: {
				required: true,
				email: true
				},

			locations: "required",
			positions: "required"
			}
		});

	window.setInterval(event, 5000);
	
	function event() {
		$("#focus hgroup h3").animate({'marginTop': 40,'marginLeft': -10}, 100, function() {
			$("#focus hgroup h3").animate({'marginTop': 50,'marginLeft': 10}, 100, function() {
				$("#focus hgroup h3").animate({'marginTop': 60,'marginLeft': -5}, 100, function() {
					$("#focus hgroup h3").animate({'marginTop': 50,'marginLeft': 0}, 100, function() {
						// Animation complete.
						});
					});
				});
			});
		}


	});
