var homeFadeing = function() {
	var settings = {speed: 2000, duration: 4500};
	var ticker;
	var imgs;
	
	var tick = function() {
			var current = imgs.filter(':visible');
			var next = current.next('img');
			if(next.length == 0) next = imgs.first();
			
			current.fadeOut(settings.speed);
			next.fadeIn(settings.speed, function() {
				setTimeout(tick, settings.duration);
			});
			
	};		
	return {
		init: function() {
			imgs = $('div.home img');
			if(imgs.length == 0) return;
			
			setTimeout(tick, settings.duration);
		}		
	};
}();

var gallery = function() {
	var settings = {speed: 'slow', duration: '4000'};
	var items;
	var stage;
	var imgs;
	var label;
	var ticker;
	
	var tick = function() {
		var current = imgs.filter(':visible');
		var next = current.next();
		if(next.length == 0) next = imgs.first();
		showImg(next.index());				
	};
	
	var showImg = function(index) {
		var current = imgs.filter(':visible');
		var next = imgs.eq(index);
		
		items.removeClass('active');
		current.fadeOut(settings.speed);
		
			var text = next.attr('alt').split("|");
			label.html('<em>' + text[1] + '</em>' + text[0]);

		next.fadeIn(settings.speed, function() {			items.eq(next.index()).addClass('active');
		});				
	};

	var clickHandler = function(event) {
		event.preventDefault();
		clearInterval(ticker);
		showImg($(this).parent().index());
	};


	return {
		init: function() {
			var galleryDiv = $('div.gallery');
			if(galleryDiv.length == 0) return;
			
			stage = $("div.stage", galleryDiv);
			items = $("li", galleryDiv);
			label = $("h2", galleryDiv);
			
			var imgTmpl = stage.children().clone()
			stage.html("");				
			
			items.each(function() {
				var $this = $(this).children();
				imgTmpl.clone().attr({'src': $this.attr('href'), 'alt': $this.children().attr('alt')}).appendTo(stage);
				imgTmpl.hide();
				$this.click(clickHandler);
			});
			imgs = stage.children('img');
			ticker = setInterval(tick, settings.duration);			
			
			$(document).bind('keydown', function(event) {
				var current = imgs.filter(':visible');
				var next;
				if(event.which == '37') {
					next = current.prev();
				} else if(event.which == '39') {
					next = current.next();
				}
				if(next && next.length != 0) {
					event.preventDefault();
					clearTimeout(ticker);				
					showImg(next.index());
				}
			});
			
		}
};
}();	


$(function() {
	homeFadeing.init();
	gallery.init();
	
	$("ul.nav > li").hover(function(e) {
				var $this = $(this);
				var mouseIn = e.type == "mouseenter";
				$this.toggleClass("hover", mouseIn);
				})
			.each(function() {
				var $this = $(this);
				var submenu = $this.find("ul");
				if(submenu.is(":not(.fill, .right)")) {
					submenu.css('left', $this.position().left + "px");
				}
			});
	if($("ul.offers li").length > 0) {
		$.getScript("/themes/villatectona/assets/jquery.colorbox-min.js", function() {
			$("li.offer ul.images").each(function() {
				$(this).find("a").colorbox({current: "{current} von {total}"}); 
			});
;					   
		});
	}
});		
