var csCount = 0;
var zIndexBase = 100;
var currentIndex = 0;
var contentIndex = 0;
var galleryElementWidth = 1200;
var waitTime = 6000;
var longWaitTime = 15000;


$(document).ready(function() {
	
	$('#headerimgs').click(function(e) {
		e.preventDefault();
		var newLink = $('.bgImage.active span').text();
		window.location = newLink;
	});
	
	csCount = $('.bgImages .bgImage').length; 
	$('.bgImages .bgImage').each(function(i) {
        if(i == 0) {
            $(this).css({'z-index' : i+1, 'opacity' : 1, 'filter': 'alpha(opacity = 100)'});
        } else {
            $(this).css({'z-index' : i+1, 'opacity' : 0, 'display': 'none'});
        }
        if(i == csCount-1) {
            /*rotateTimeout = setTimeout(function() {
        		rotateImage();
        	}, waitTime);*/
        	firstStyle = $('.bgImages .bgImage:eq(0)').attr('style');
        	firstContent = $('.bgImages .bgImage:eq(0)').html();
        }
    });
    $('.bgImages').append("<div class='bgImage' style='"+firstStyle+" opacity: 0; filter: alpha(opacity = 0); display:none;'>"+firstContent+"</div>");
    $('.bgImages .bgImage:eq('+csCount+')').css({'z-index' : csCount + 1});
    
    $('.sliderNav a').click(function(e) {
    	e.preventDefault();
    	$('.sliderNav a').removeClass('selected');
    	$(this).addClass('selected');
        navNumber = $(this).html();
        updateContent(navNumber - 1);
   });
	
});

$(window).load(function() {
	rotateTimeout = setTimeout(function() {
		rotateImage();
	}, waitTime);
});	

function updateContent(index) {
   currentIndex = index-1;
   contentIndex = index-1;
   clearTimeout(rotateTimeout);
   rotateImageClick();
}

function updateText(index) {
    $('.sliderNav a').removeClass('selected');
    $('.sliderNav a:eq('+index+')').addClass('selected');
}

function rotateImageClick() {
    currentIndex++;
    contentIndex = contentIndex == csCount-1 ? 0 : contentIndex+1;
    updateText(contentIndex);
    $('.bgImages .bgImage').stop(true, true);
    $('.bgImages div').removeClass('active');
    //$('.bgImages .bgImage:eq('+currentIndex+')').css({"display":"block"});
    
    clickedStyle = $('.bgImages .bgImage:eq('+currentIndex+')').attr('style');
    clickedContent = $('.bgImages .bgImage:eq('+currentIndex+')').html();
    $('.bgImages').append("<div class='bgImage' style='"+clickedStyle+" opacity: 0; display:block; z-index:"+(csCount+2)+"'>"+clickedContent+"</div>");
    
    $('.bgImages .bgImage:eq('+(csCount+1)+')').animate({'opacity' : 1}, {
        duration:1000, 
        queue:false, 
        easing:"swing",
        complete: function() {
            if(currentIndex == csCount) {
                $('.bgImages .bgImage:eq('+(csCount-1)+')').css({'opacity' : 0, 'display': 'none'});
                //$('.bgImages .bgImage:eq('+(csCount-1)+')').children('.contentWrapper').children('.contentBlock').hide();
                $('.bgImages .bgImage:eq('+(csCount)+')').css({'opacity' : 0, 'display': 'none'});
                //$('.bgImages .bgImage:eq('+(csCount)+')').children('.contentWrapper').children('.contentBlock').hide();
                $('.bgImages .bgImage:eq(0)').css({'opacity' : 1, 'display': 'block'});
                $('.bgImages .bgImage:eq(0)').addClass('active');
                //$('.bgImages .bgImage:eq(0)').children('.contentWrapper').children('.contentBlock').show();
                currentIndex = 0;
            } else {
                //$('.bgImages .bgImage:eq('+(currentIndex-1)+')').css({'opacity' : 0, 'display': 'none'});
                $('.bgImages .bgImage').css({'opacity' : 0, 'display': 'none'});
                //$('.bgImages .bgImage:eq('+(currentIndex-1)+')').children('.contentWrapper').children('.contentBlock').hide();
                $('.bgImages .bgImage:eq('+currentIndex+')').css({'opacity' : 1, 'display': 'block'});
                $('.bgImages .bgImage:eq('+currentIndex+')').addClass('active');
                //$('.bgImages .bgImage:eq('+currentIndex+')').children('.contentWrapper').children('.contentBlock').show();
            }
            $('.bgImages .bgImage:eq('+(csCount+1)+')').remove();
        }
    });
    rotateTimeout = setTimeout(function() {
		rotateImage();
	}, longWaitTime);
}

function rotateImage() {
    currentIndex++;
    contentIndex = contentIndex == csCount-1 ? 0 : contentIndex+1;
    updateText(contentIndex);
    $('.bgImages .bgImage').stop(true, true);
    $('.bgImages div').removeClass('active');
    $('.bgImages .bgImage:eq('+currentIndex+')').css({"display":"block"});
    $('.bgImages .bgImage:eq('+currentIndex+')').animate({'opacity' : 1}, {
        duration:1000, 
        queue:false, 
        easing:"swing",
        complete: function() {
            if(currentIndex == csCount) {
                $('.bgImages .bgImage:eq('+(csCount-1)+')').css({'opacity' : 0, 'display': 'none'});
                //$('.bgImages .bgImage:eq('+(csCount-1)+')').children('.contentWrapper').children('.contentBlock').hide();
                $('.bgImages .bgImage:eq('+(csCount)+')').css({'opacity' : 0, 'display': 'none'});
                //$('.bgImages .bgImage:eq('+(csCount)+')').children('.contentWrapper').children('.contentBlock').hide();
                $('.bgImages .bgImage:eq(0)').css({'opacity' : 1, 'display': 'block'});
                $('.bgImages .bgImage:eq(0)').addClass('active');
                //$('.bgImages .bgImage:eq(0)').children('.contentWrapper').children('.contentBlock').show();
                currentIndex = 0;
            } else {
                $('.bgImages .bgImage:eq('+(currentIndex-1)+')').css({'opacity' : 0, 'display': 'none'});
                //$('.bgImages .bgImage:eq('+(currentIndex-1)+')').children('.contentWrapper').children('.contentBlock').hide();
                $('.bgImages .bgImage:eq('+currentIndex+')').css({'opacity' : 1, 'display': 'block'});
                $('.bgImages .bgImage:eq('+currentIndex+')').addClass('active');
                //$('.bgImages .bgImage:eq('+currentIndex+')').children('.contentWrapper').children('.contentBlock').show();
            }
        }
    });
    rotateTimeout = setTimeout(function() {
		rotateImage();
	}, waitTime);
}
