$(document).ready(function(){
	$("#pictures").append("<div id=\"picloading\">Please wait while loading thumbnails.</div>");
});

runOnLoad(function(){

	$("#picloading").remove();
	
	// zobrazeni prvku nepotrebnych v ne-js verzi
	$("#picgallery").append("<div id=\"controls\"><div id=\"scrollLeft\" title=\"Scroll left\"></div><div id=\"scrollRight\" title=\"Scroll right\"></div></div>");
	$("#picgallery").prepend("<div id=\"status\"><div id=\"bar\"><span></span></div></div>");
	$("#pictures div").css("position","absolute");
	$("#pictures div").css("overflow","hidden");
	$("#pictures div").css("width","10000px");
	$("#pictures div").css("height","80px");
	$("#pictures").css("overflow","hidden");
	$("#pictures").css("height","80px");
	$("#picgallery").css("height","100px");
	$("p#thumbnails span").css("opacity","0.2");
	$("p#thumbnails span").css("-moz-opacity","0.2");
	
	// browse thru elements and make arrays
	i = 0;
	picturesurl = new Array();
	picturesalt = new Array();
	$("#pictures a").each(function(){
			picturesurl[i] = $(this).attr("href");
			picturesalt[i] = $(this).children("img").attr("alt");
			i++;
	});
	
	// list picture according to hash in url
	var url = location.href;
	var isHash = url.indexOf("#");
	if(isHash != -1) {
		var identifier = url.substring((isHash+1),url.length);
		if(identifier.indexOf("p") == "0") {
			var pid = identifier.split("p");
			if(pid[1] > 0 && pid[1] <= picturesurl[(picturesurl.length - 1)]) {
				$("#detailpic").css("height","630px");
				$("#detailpic").html("<h3>"+picturesalt[(pid[1]-1)]+"</h3><img src='"+picturesurl[(pid[1]-1)]+"' alt='"+picturesalt[(pid[1]-1)]+"' />");
				picclass = "HASHp"+pid[1];
				$("#pictures ."+picclass).fadeTo("slow", 0.4);
			}
		}
	}

	// konstanty
	var velikostposunu = 470;
	var rychlostposunu = 1500;
	
	// zjisteni sirku bloku s obrazky
	var sirkaobsahuobrazku = 0;
	$("#pictures a").each(function(){
			sirkaobsahuobrazku += $(this).width() + 2;

			var photohref = $(this).attr("href");
			var photoclass = $(this).attr("class");
			var photoclasses = new Array();
			
			if (photoclass.indexOf(" ") >= 1) photoclasses = photoclass.split(" ");
			if (photoclasses.length > 0) {
				for(i = 0; i < photoclasses.length; i++) {
					if (photoclasses[i].indexOf("HASH") != -1) {
						photoclass=photoclasses[i];
					}
				}
			}
			photoHash = photoclass.split("HASH");
			photoHash = "#"+photoHash[1];
			$(this).attr("href",photoHash);

			$(this).bind("click", function(){
					$("#detailpic").css("height","530px");
					$("#detailpic").html("<h3>"+$(this).children().attr("alt")+"</h3><img src='"+photohref+"' alt='"+$(this).children().attr("alt")+"' />");
					$(this).fadeTo("slow", 0.4);
					$("#status").focus();
					return true;
			});
	});
	
	// nastaveni sirky bloku s obrazky
	$("#pictures div").width(sirkaobsahuobrazku);
	
	// zobrazit ci nezobrazit controls
	if(sirkaobsahuobrazku > $("#pictures").width()) {
		$("#scrollRight").fadeIn();
	}
	
	// spocitani procentualni sirky posuvnikoveho baru
	var sirkavyrezu = $("#pictures").width();
	var pomersirkyvyrezu = ((sirkavyrezu / sirkaobsahuobrazku));
	sirkabaru = Math.floor(pomersirkyvyrezu * $("#status").width());
	if (sirkabaru >  $("#status").width()) sirkabaru =  $("#status").width(); 
	$("#bar").animate({ width: sirkabaru }, 200);
	var zbyvajiciprostorbaru = $("#status").width() - sirkabaru;
	
	// zjisteni aktualni pozice bloku s obrazky
	var aktualnipozice = 0;
	
	// namapovat scroll right
	$("#scrollRight").bind("click", function(){
			aktualnipozice = aktualnipozice + velikostposunu;
			if(aktualnipozice > ((sirkaobsahuobrazku - sirkavyrezu))) aktualnipozice = (sirkaobsahuobrazku - sirkavyrezu);
			posunnapozici = ((-1)*aktualnipozice); 
			posunbarunapozici = Math.round((aktualnipozice / ((sirkaobsahuobrazku - sirkavyrezu))) * zbyvajiciprostorbaru);
			if(posunbarunapozici > zbyvajiciprostorbaru) posunbarunapozici = zbyvajiciprostorbaru; 
			$("#bar").animate({ left: posunbarunapozici }, rychlostposunu);
			$("#pictures div").animate({ left: posunnapozici }, rychlostposunu);
			if ($("#scrollLeft").css("display") == "none") {
				if(aktualnipozice > 0) $("#scrollLeft").fadeIn();
			}
			if(aktualnipozice >= (sirkaobsahuobrazku - sirkavyrezu - 2)) $("#scrollRight").fadeOut(); 
			// $("#debug").val(posunnapozici);
			// $("#debug2").val(posunbarunapozici);
	});

	// namapovat scroll left
	$("#scrollLeft").bind("click", function(){
			aktualnipozice = aktualnipozice - velikostposunu;
			if(aktualnipozice < 0) aktualnipozice = 0;
			posunnapozici = ((-1)*aktualnipozice); 
			posunbarunapozici = Math.floor((aktualnipozice / ((sirkaobsahuobrazku - sirkavyrezu))) * zbyvajiciprostorbaru);
			if(posunbarunapozici < 8) posunbarunapozici = 0; 
			$("#bar").animate({ left: posunbarunapozici }, rychlostposunu);
			$("#pictures div").animate({ left: posunnapozici }, rychlostposunu); 
			if ($("#scrollRight").css("display") == "none") {
				if(aktualnipozice < (sirkaobsahuobrazku - sirkavyrezu - 2)) $("#scrollRight").fadeIn();
			}
			if(aktualnipozice < 2) $("#scrollLeft").fadeOut(); 
			// $("#debug").val(posunnapozici);
			// $("#debug2").val(posunbarunapozici);
	});
	
});