$(document).ready(function () {
    $(".main-nav").each(function () {
        var root = $(this);
        root.find("li:last-child a").css("background", "none");
    });
    $('.main-nav li.current-menu-item').each(function () {
        $(this).prev().addClass('nactive');
    });
    $('.pagers').add('<div class="new" />');
    $('.pagers').wrap('<div class="new" />');
    $('.main-nav li.current_page_parent').each(function () {
        $(this).prev().addClass('nactive');
    });
    $('.postContent ol').each(function () {
        $(this).find("li:even").addClass('odd');
    });
    $('.postContent ul').each(function () {
        $(this).find("li:even").addClass('odd');
    });
    $(".articles").each(function () {
        var root = $(this);
        root.find("li:last-child").css("margin-right", "0px");
    });
    $(".smallStats").each(function () {
        var root = $(this);
        root.find("li:last-child").css("margin-right", "0px");
        root.find("li:last-child").css("background", "none");
        root.find("li:last-child").css("padding-right", "0px");
    });
    $(".articles").each(function () {
        var root = $(this);
        root.find("li:last-child").css("border-bottom", "none");
    });
    $(".footerNav").each(function () {
        var root = $(this);
        root.find("li:first-child a").css("background", "none");
    });
    
    $("ul.people .blogList ul").each(function () {
        var root = $(this);
        root.find("li:first-child").css("border-top", "none");
        root.find("li:last-child").css("border-bottom", "none");
    });
    
    $(function() {
		$('.social').hover(function(){
			$(this).find('a.facebook').animate({top:'0px', left:'60px'},{queue:false,duration:500});
			$(this).find('a.twitter').animate({top:'60px',left:'60px'},{queue:false,duration:500});
			$(this).find('a.git').animate({top:'60px',left:'0px'},{queue:false,duration:500});
			$(this).find('a.linkedin').animate({top:'0px'},{queue:false,duration:500});
			$(this).find('a.dribbble').animate({top:'60px',left:'120px'},{queue:false,duration:500});
			$(this).find('a.google').animate({top:'0px',left:'120px'},{queue:false,duration:500});
		}, function(){
			$(this).find('a.facebook').animate({top:'4px',left:'34px'},{queue:false,duration:500});
			$(this).find('a.twitter').animate({top:'40px',left:'72px'},{queue:false,duration:500});
			$(this).find('a.git').animate({top:'42px',left:'34px'},{queue:false,duration:500});
			$(this).find('a.linkedin').animate({top:'30px'},{queue:false,duration:500});
			$(this).find('a.dribbble').animate({top:'32px',left:'102px'},{queue:false,duration:500});
			$(this).find('a.google').animate({top:'0px',left:'72px'},{queue:false,duration:500});
		});
	});
	
    $(function() {
		$('#promoCarousel').hover(function(){
			$(this).find('.prev a').animate({left:'0px'},{queue:false,duration:500});
			$(this).find('.next a').animate({right:'0px'},{queue:false,duration:500});
		}, function(){
			$(this).find('.prev a').animate({left:'-11px'},{queue:false,duration:500});
			$(this).find('.next a').animate({right:'-11px'},{queue:false,duration:500});
		});
	});

    $('.login').animate({
        marginTop: '-238px'
    }, 200);
    $('.client-login a').toggle(
        function(){
            $('.login').animate({
                marginTop: '0'
            }, 500);
            $('.client-login a').addClass("active");
        },
        function(){
            $('.login').animate({
                marginTop: '-238px'
            }, 500);
             $('.client-login a').removeClass("active");
    });

	$("ul.people li:nth-child(4n)").addClass("last");
	$("ul.services li:nth-child(2n)").addClass("last");
	$("ul.services li:first-child").addClass("noborder");
	$("ul.services li:nth-child(2)").addClass("noborder");
	
	preloadHomeCarouselImages();

});

// Wrap each animation in a function as shown below.
// slideObj can be referenced to access current and next container.
function setAnimations() {
	return {
		transactivIn: function(slideObj) {
			slideObj.next.find('.carouselBackground').delay(300).fadeIn(600);
			slideObj.next.find('.carouselOverlay').delay(300).fadeIn(600);
			slideObj.next.find('.carouselContent').delay(600).fadeIn(800);
			slideObj.next.find('.screen3').delay(600).animate({top:'172px'},{duration:800});
			slideObj.next.find('.screen2').delay(800).animate({top:'226px'},{duration:800});
			slideObj.next.find('.screen1').delay(800).animate({top:'226px'},{duration:800});
		},
		
		transactivOut: function(slideObj) {
			slideObj.active.find('.screen2').delay(0).animate({top:'560px'},{duration:600});
			slideObj.active.find('.screen1').delay(0).animate({top:'560px'},{duration:600});
			slideObj.active.find('.screen3').delay(100).animate({top:'560px'},{duration:600});
			slideObj.active.find('.carouselContent').fadeOut(600);
			slideObj.active.find('.carouselBackground').delay(100).fadeOut(600);
			slideObj.active.find('.carouselOverlay').delay(100).fadeOut(600,function() {slideObj.callback(slideObj)});
		},
		
		toyotaIn: function(slideObj) {
			slideObj.next.find('.carouselBackground').delay(0).fadeIn(600);
			slideObj.next.find('.toyotaFooter').delay(0).fadeIn(600);
			slideObj.next.find('.carouselContent').delay(200).fadeIn(800);
			slideObj.next.find('.flash').delay(400).fadeIn(600);
			slideObj.next.find('.flash img').delay(1000).fadeIn(600);
			slideObj.next.find('.toyotaGraph').delay(400).fadeIn(800);
		},
		
		toyotaOut: function(slideObj) {
			slideObj.active.find('.carouselContent').fadeOut(600);
			slideObj.active.find('.toyotaGraph').fadeOut(400);
			slideObj.active.find('.flash').fadeOut(600);
			slideObj.active.find('.toyotaFooter').fadeOut(600);
			slideObj.active.find('.carouselBackground').delay(300).fadeOut(600,function() {slideObj.callback(slideObj)});
		},

		keltyIn: function(slideObj) {
			slideObj.next.find('.carouselBackground').delay(300).fadeIn(600);
			slideObj.next.find('.carouselOverlay').delay(300).fadeIn(600);
			slideObj.next.find('.carouselContent').delay(1000).fadeIn(800);
			slideObj.next.find('.carouselScreenshot').delay(1000).fadeIn(800);
			slideObj.next.find('.carouselContent h2 span.fadeOne').delay(1400).fadeTo(800 , 1.0, function() {
			      // Animation complete.
    		});
			slideObj.next.find('.carouselContent h2 span.fadeTwo').delay(2000).fadeTo(800, 1.0, function() {
			      // Animation complete.
    		});
			slideObj.next.find('.carouselContent h2 span.fadeThree').delay(2600).fadeTo(800, 1.0, function() {
			      // Animation complete.
    		});
		},
		
		keltyOut: function(slideObj) {
			slideObj.active.find('.carouselOverlay').fadeOut(600);
			slideObj.active.find('.carouselContent').fadeOut(600);
			slideObj.active.find('.carouselScreenshot').fadeOut(600);
			slideObj.active.find('.carouselContent h2 span.fadeOne').fadeTo(600 , 1.0, function() {
			      // Animation complete.
    		});
			slideObj.active.find('.carouselContent h2 span.fadeTwo').fadeTo(600, 1.0, function() {
			      // Animation complete.
    		});
			slideObj.active.find('.carouselContent h2 span.fadeThree').fadeTo(600, 1.0, function() {
			      // Animation complete.
    		});
			slideObj.active.find('.carouselBackground').delay(600).fadeOut(600,function() {slideObj.callback(slideObj)});
		},

		slumberjackIn: function(slideObj) {
			slideObj.next.fadeIn(500);
		},
		
		slumberjackOut: function(slideObj) {
			slideObj.active.fadeOut(600,function() {slideObj.callback(slideObj)});
		},
		
		isisIn: function(slideObj) {
			slideObj.next.find('.carouselBackground').delay(300).fadeIn(600);
			slideObj.next.find('.splashLeftOne').delay(800).fadeIn(200);
			slideObj.next.find('.splashLeftTwo').delay(1000).fadeIn(200);
			slideObj.next.find('.splashLeftThree').delay(1200).fadeIn(200);
			slideObj.next.find('.splashRightOne').delay(800).fadeIn(200);
			slideObj.next.find('.splashRightTwo').delay(1400).fadeIn(200);
			slideObj.next.find('.splashRightThree').delay(1600).fadeIn(200);
			slideObj.next.find('.screenshot').delay(1800).fadeIn(200);
			slideObj.next.find('.calloutOne').delay(2000).fadeIn(200);
			slideObj.next.find('.calloutTwo').delay(2200).fadeIn(200);
			slideObj.next.find('.carouselContent').delay(2200).fadeIn(600);
		},
		
		isisOut: function(slideObj) {
			slideObj.active.find('.carouselContent').delay(0).fadeOut(600);
			slideObj.active.find('.calloutTwo').delay(100).fadeOut(200);
			slideObj.active.find('.calloutOne').delay(200).fadeOut(200);
			slideObj.active.find('.screenshot').delay(300).fadeOut(200);
			slideObj.active.find('.splashRightThree').delay(400).fadeOut(200);
			slideObj.active.find('.splashRightTwo').delay(500).fadeOut(200);
			slideObj.active.find('.splashRightOne').delay(600).fadeOut(200);
			slideObj.active.find('.splashLeftThree').delay(700).fadeOut(200);
			slideObj.active.find('.splashLeftTwo').delay(800).fadeOut(200);
			slideObj.active.find('.splashLeftOne').delay(900).fadeOut(200);
			slideObj.active.find('.carouselBackground').delay(1000).fadeOut(600,function() {slideObj.callback(slideObj)});
		}
	}
}


function preloadLightboxImages() {
	var els = $('#lightboxImages').find('.group'),
		images = [];
	
	els.each(function() {
		images.push($(this).attr('href'));
	});
	
	$.imgpreload(images);
}

function preloadHomeCarouselImages() {
	var root = $('#carouselImages');
	
	if (root.length) {
		var images = $.parseJSON($.trim(root.text()));

		$.imgpreload(images);
	}
}

/* Work Page Tab Callbacks */

function setTabCallbacks(tabs) {
    var callbacks = {};

    for (i=0;i<tabs.length;i++) {

        callbacks[tabs[i]] = function(tabname) {
            preloadLightboxImages();

            $('#' + tabname + 'Sliders').flexslider({
                animation: 'slide',
                directionNav: false,
                controlsContainer: $('#pagerControls'),
                controlNav: true
            });
        }
    }

    return callbacks;
}

// Extend callbacks to the tabs object.
$(document).ready(function() {
    var tabs = ['isis', 'kelty', 'listsonline', 'sierradesigns', 'slumberjack', 'toyota', 'transactiv', 'ultimatedirection'];
    $.fn.tabs.callbacks = $.extend({}, setTabCallbacks(tabs), $.fn.tabs.callbacks);
});
