function trace(content)
{
$("#trace").append(content+"<br/>");
}
	var gal_els;
	var gal_cur=-1;
	var gal_photo_cur=-1;
	var slideshow=false;
	var slidetimeout;
	var galtimeoutnext;
	var galtimeoutprev;
	var gal_totalw=0;
	var cacheimg_big=new Array();
	var cacheimg_mid=new Array();
	
	
	$(window).load(function() {
		gal_els=$("a.gal_thumb");
		if(gal_els.length>0)
		{
			$("a#gal_control_prev").mousedown(function() { galPrev(); return false;});
			$("a#gal_control_prev").mouseup(function() { clearTimeout(galtimeoutprev); return false;});
			$("a#gal_control_prev").click(function() { return false; });
			
			$("a#gal_control_next").mousedown(function() { galNext(); return false;});
			$("a#gal_control_next").mouseup(function() { clearTimeout(galtimeoutnext); return false;});
			$("a#gal_control_next").click(function() { return false; });
			
			$("a#gal_control_navi_next").click(function() { photoNext(); return false; });
			$("a#gal_control_navi_prev").click(function() { photoPrev(); return false; });
			$("a#gal_control_play").click(function() { toggleSlideshow(); return false; });
			
			$("#gal_control_navi_stat").html("0/"+gal_els.length);
			
			$("#gal_control").fadeIn();
			
			
			
			
			
			
			var j=0;
			$(gal_els).each(function() {
				j++;
				$(this).click(function() { showPhoto(this); return false; });
				
				//preload all...
				cacheimg_big[j-1]=new Image();
				cacheimg_big[j-1].src=$(this).attr("href").replace("mid","big");
				
				cacheimg_mid[j-1]=new Image();
				cacheimg_mid[j-1].src=$(this).attr("href");
				
				/*probuj cache'owac nastepny
					 
					if(slideshow) { cacheimg.src=($(gal_els[(i+1)%(gal_els.length)]).attr("href")).replace("mid","big"); }
					else { cacheimg.src=($(gal_els[(i+1)%(gal_els.length)]).attr("href")); } */
				
				
			});
			
			for(i=0; i<gal_els.length; i++)
			{
				gal_totalw=gal_totalw+$(gal_els[i]).outerWidth(true);
			}
			$("#gal_thumbs_content").css("width",gal_totalw);
			
			
			//showPhoto(gal_els[0]);
			$(gal_els).fadeIn();
			galGoToPhoto(0);
			
			
			
		}
		
		
		$("#menu_left a").mouseover(function() {
			if(!($(this).hasClass("katalog"))) 
			{
				id=$(this).attr("rel");
				$("#obrazki img:not(#"+id+")").fadeOut();
				$("#"+id).fadeIn();
			}
			else
			{
				id=$(this).attr("rel");
				id=id.replace("submenu","obrazki");
				$("#obrazki img:not(#"+id+")").fadeOut();
				$("#"+id).fadeIn();
			
			}
		});
		$("#menu_left a.katalog").click(function() {
			if($(this).hasClass("katalog_on"))
			{
				$(this).removeClass("katalog_on");
				id=$(this).attr("rel");
				$("#"+id).slideUp();
			}
			else
			{
				$(this).addClass("katalog_on");
				id=$(this).attr("rel");
				$("#"+id).slideDown();
			}
			return false;
		});
		$("#empty_loader").fadeOut();
		
	});
	function galGoToPhoto(id)
	{
		maxid=0;
		curw=$("#gal_thumbs").outerWidth();
		for(i=0; i<gal_els.length; i++)
		{
			o=$(gal_els[i]).position();
			offset=o.left;//+$(gal_els[i]).outerWidth();
			if(gal_totalw-offset<curw) { maxid=i; break;}
			//alert(gal_totalw+"-"+offset+">"+curw);
		}
		//maxid+=3;
		if(id>=maxid) { 
			gal_cur=maxid;
			leftpx = 	-1* (gal_totalw - $("#gal_thumbs").outerWidth() );
		}
		else {
			gal_cur=id;
			o=$(gal_els[gal_cur]).position();
			leftpx=-1*o.left;
		}
		
		$("#gal_thumbs_content").animate({left:leftpx});
		
	}
	function galNext()
	{
		//$(gal_els[gal_cur]).css("left",$("#gal_control").outerWidth());
		if(gal_cur+1<gal_els.length)
		{
			galGoToPhoto(gal_cur+1);
		}
		galtimeoutnext=setTimeout("galNext()",600);
	}
	function galPrev()
	{
		if(gal_cur-1>0)
		{
			galGoToPhoto(gal_cur-1);
		}
		galtimeoutprev=setTimeout("galPrev()",600);
	}
	
	function showPhoto(el)
	{
		//ktora miniatura
		if(gal_photo_cur==-1) { $("#txt_padding").fadeOut(); $("#gal_foto").show(); }
		
		
		for(i=0; i<gal_els.length;i++)
		{
			if($(gal_els[i]).attr("href")==$(el).attr("href"))
			{
				gal_photo_cur=i;
				$("#gal_control_navi_stat").html((i+1)+"/"+gal_els.length);
			}
		}
		//trace(gal_photo_cur);
		$("#gal_foto img").unbind("load").stop().fadeTo(1000,0.0); //just in case ;)
		$("#gal_loader").stop().fadeTo("fast",1.0,function() {
			$("#gal_foto").empty();
				
				var img = new Image();
				//$(img).hide();
				$(img).load(function () {
					$("#gal_loader").fadeOut("slow");
					
					//$(this).css("top",-2000).show();
					//$("#gal_foto img").unbind("load").stop().fadeTo(300,0.0,function() { $(this).remove(); });
					
					var top = $("#gal_foto").height() - $(this).height();
					if(slideshow) { top=Math.floor(top/2); }
					else {  top=Math.floor((top-65)/2); }
					
					$(this).css("top",top );
					left=Math.floor(($("#gal_foto").width()-$(this).width())/2); 
					$(this).css("left",left );
					
					
					//$("#gal_foto img").fadeTo(1000, 1.0);
					if(slideshow) { slidetimeout=setTimeout("photoNext()",6500); }
					
					
				});
				$(img).error(function() { alert('blad'); });
				$("#gal_foto").append($(img));
				
				src=$(el).attr("href");
				if(slideshow) { src=src.replace("mid","big"); }
				$(img).attr("src",src);
				
			});
		//});
	}
	function photoNext()
	{
		if(gal_photo_cur==-1) { $("#txt_padding").fadeOut(); $("#gal_foto").show();}
		gal_photo_cur=(gal_photo_cur+1)%(gal_els.length);
		showPhoto(gal_els[gal_photo_cur]);
		
	}
	function photoPrev()
	{
		if(gal_photo_cur==-1) { $("#txt_padding").fadeOut(); $("#gal_foto").show();}
		if(gal_photo_cur-1<0) { gal_photo_cur=gal_els.length-1; }
		else { gal_photo_cur=gal_photo_cur-1; }
		showPhoto(gal_els[gal_photo_cur]);
	}
	function toggleSlideshow()
	{
		if(!slideshow)
		{
			slideshow=true; 
			photoNext();
			$("#gal_control").fadeOut();
			$(document).bind('click', function() { toggleSlideshow(); });
			$("body").css("cursor","pointer");

			//$("#gal_control_play").css("backgroundImage","url('images/slideshowp.gif')");
		}
		else
		{
			slideshow=false; 
			clearTimeout(slidetimeout);
			$("#gal_control").fadeIn();
			$(document).unbind('click');
			$("body").css("cursor","");

			showPhoto(gal_els[gal_photo_cur]);
			

		}
	}
	
