$(document).ready(function(){
	var fadeTime = 900;
	var textFadeTime = 450;
	var nextTimer = 0;
	var crossTimer = 0;
	var textFadeTimer = 0;
	
	$('.hometeaser .item').each(function(){
		var dot = $('<span class="dot">&nbsp;</span>')
		var slide = $(this).data('dot', dot);
		dot.bind('click', function(){
			if(!$('.hometeaser .item:visible').is(slide))
			changeSlides(slide);
		});
		if(slide.is(':visible')){
			dot.addClass('active');
		}
		$('.chapter_home #header .teaser_nav').append(dot);
	})
	
	timeoutTeaser();
	function timeoutTeaser(){
		nextTimer = setTimeout(nextTeaser, 6000);
	}
	function nextTeaser(){
		var next = $('.hometeaser .item:hidden').filter(function(index){return $(this).prev().is(':visible') || index == 0 && $(this).siblings(':last-child').is(':visible')}).first();
		changeSlides(next);
	}
	function changeSlides(newSlide){
		newSlide.data('dot').addClass('active').siblings().removeClass('active');
		$('.hometeaser .item').stop(true, true).children('.text').stop(true, true);
		clearTimeout(nextTimer);
		clearTimeout(crossTimer);
		clearTimeout(textFadeTimer);
		$('.hometeaser .item:visible').css('position', 'absolute').children('.text').fadeOut(textFadeTime, 'easeOutCubic', function(){
			var oldSlide = $(this).parent();
			crossTimer = setTimeout(function(){crossfade(oldSlide, newSlide)}, 200);
		})
	}
	function crossfade(oldSlide, newSlide){
		oldSlide.fadeOut(fadeTime, 'easeOutCubic');
		newSlide.css('position', 'absolute').fadeIn(fadeTime, 'easeOutCubic', function(){
			var textEl = $(this);
			textFadeTimer = setTimeout(function(){fadeInText(textEl)}, 200);
		})
		.children('.text').hide();
	}
	function fadeInText(el){
		el.children('.text').fadeIn(textFadeTime, 'easeOutCubic', timeoutTeaser)
	}
})
