

$("document").ready(function(){
	
	gallery.init();
	
	$(".up, .navigatie .vorige").click(function(){
		
		gallery.up();
		return(false);
	
	});
	
	$(".down, .navigatie .volgende").click(function(){
		
		gallery.down();
		return(false);
	
	});
	
	$(".navigatie .vergroting span").click(function(){
		
		gallery.tb();
		return(false);
	
	});
	
	$(".thumbs .thumb").click(function(){
		
		gallery.click(this);
		return(false);
	
	});
	
	$(".tab:first").show();
	$(".tabs a:first").addClass("active");
	
	$(".tabs a").click(function(){
	
		$(".tab").hide();
		$(".tabs .active").removeClass("active");
		$("."+($(this).attr("href").replace(/#/, ""))).show();
		$(this).addClass("active");
		
		if($(this).attr("href") == "#maps" || $(this).attr("href") == "#streetview"){
			
			$("."+($(this).attr("href").replace(/#/, ""))).find("iframe").attr({"src": $("."+($(this).attr("href").replace(/#/, ""))).find("iframe").attr("title")});
		
		}
		
		return(false);
	
	});
	
	$(".thumbs .thumb a").click(function(){
		
		gallery.click($(this).parent());
		return(false);
	
	});

});

var gallery	=	{

	active:		0,
	first:		0,
	last:		-1,
	top:		0,
	bottom:		2,
	speed:		80,
	
	thumb:		{
	
		"selector":	".thumb",
		"height":	99
	
	},
	
	photo:		{
	
		"selector":	".foto img"
	
	},
	
	slider:		{
	
		"selector":	".thumbs .slider"
		
	},
	
	previous:	{
	
		"selector":	".up, .navigatie .vorige"
	
	},
	
	next:		{
	
		"selector":	".down, .navigatie .volgende"
	
	},
	
	counter:	{
	
		"selector":	".onderschrift span"
	
	},
	
	init:			function(){
	
		// Add active class to first image
		$(gallery.thumb.selector+":first, "+gallery.thumb.selector+":first img").addClass("active");
		
		$(gallery.thumb.selector).each(function(){
		
			gallery.last++;
			$(this).attr({"rel": gallery.last});
		
		});
		
		//gallery.thumb.height	=	$(gallery.thumb.selector).outerHeight(true);
		
		gallery.update_counter();
		gallery.activate_deactivate();
	
	},
	
	up:			function(){
	
		if(gallery.top > gallery.first && gallery.active == gallery.top + 1){
		
			$(gallery.slider.selector).animate({"top": "+="+gallery.thumb.height});
			
			gallery.top--;
			gallery.bottom--;
			gallery.active--;
		
		}else if(gallery.active > gallery.first){
		
			gallery.active--;
		
		}
		
		gallery.change_photo();
	
	},
	
	down:			function(){
		
		if((gallery.bottom < gallery.last) && gallery.active == gallery.bottom - 1){
		
			$(gallery.slider.selector).animate({"top": "-="+gallery.thumb.height});
			gallery.top++;
			gallery.bottom++;
			gallery.active++;
		
		}else if(gallery.active < gallery.last){
		
			gallery.active++;
		
		}
		
		gallery.change_photo();
	
	},
	
	click:			function(current){
		
		var active	=	parseInt($(current).attr("rel"));
		gallery.active	=	active;
				
		if(active == gallery.top){
			
			gallery.active++;
			gallery.up();
		
		}else if(active == gallery.bottom){
		
			gallery.active--;
			gallery.down();
		
		}else{
			
			gallery.active	=	active;
			gallery.change_photo();
		
		}
		
	
	},
	
	change_photo:		function(){
		
		// Add/remove active class
		$(gallery.thumb.selector+".active, "+gallery.thumb.selector+".active img").removeClass("active");
		$(gallery.thumb.selector+"[rel="+gallery.active+"], "+gallery.thumb.selector+"[rel="+gallery.active+"] img").addClass("active");
		
		$(gallery.photo.selector).attr({src: $(gallery.thumb.selector+"[rel="+gallery.active+"] img").attr("src")});
		
		gallery.update_counter();
		gallery.activate_deactivate();
	
	},
	
	update_counter:		function(){
		
		if(gallery.last == -1){
		
			$(gallery.counter.selector).text("geen fotos");
		
		}else{
		
			$(gallery.counter.selector).text("foto "+(gallery.active+1)+" van "+(gallery.last+1));
		
		}
	
	},
	
	activate_deactivate:	function(){
	
		if(gallery.active <= gallery.first){
		
			$(gallery.previous.selector).addClass("prev_disabled");
		
		}else{
		
			$(gallery.previous.selector).removeClass("prev_disabled");
		
		}
	
		if(gallery.active >= gallery.last){
		
			$(gallery.next.selector).addClass("next_disabled");
		
		}else{
		
			$(gallery.next.selector).removeClass("next_disabled");
		
		}
	
	},
	
	tb:			function(){
		
		//tb_show("", $("img.active").attr("src"), "gal");
		tb_show("", $("a:has(img.active)").attr("href"), "gal");
		
	}

}

