var PREVIEWS_PER_PAGE = 8;

function ShowPhoto(ID)
{
	ID = ID > 0 ? ID : 0;
	if(ID == 0) 
	{
		ID = window.location.hash.replace("#", "");
		if(PHOTOS[ID]) ShowPhoto(ID); else return;
	}
	else
	{
		window.location.hash = ID;
		var prev = document.getElementById("prev");
		if(prev) prev.disabled = PositionPhoto(ID) == 0 ? true : false;
		
		var next = document.getElementById("next");
		if(next) next.disabled = PositionPhoto(ID) == POSITIONS.length-1;
		
		var photo_block = document.getElementById("photo_block");
		if(photo_block) 
		{
			photo_block.style.display = "block";
			photo_block.scrollIntoView(true);
		}
		
		var photo = document.getElementById("photo");
		if(photo && PHOTOS[ID]) photo.innerHTML = "<img src=\""+PHOTOS[ID]+"\">";
		
		var descr = document.getElementById("descr");
		if(descr) descr.innerHTML = DESCR[ID] ? DESCR[ID] : "&nbsp;";
		
		var page_number = Math.ceil((PositionPhoto(ID)+1)/PREVIEWS_PER_PAGE);
		Page(page_number);
	}	
}

function PositionPhoto(ID)
{
	for (var i = 0; i < POSITIONS.length; i++) if(POSITIONS[i] == ID) return i;
}

function NextPhoto()
{
	var current = window.location.hash.replace("#", "");
	var next = PositionPhoto(current)+1;
	next = POSITIONS[next];
	if(PHOTOS[next]) ShowPhoto(next); else return;
}

function PrevPhoto()
{
	var current = window.location.hash.replace("#", "");
	var prev = PositionPhoto(current)-1;
	prev = POSITIONS[prev];
	if(PHOTOS[prev]) ShowPhoto(prev); else return;
}

function Page(N)
{
	var pages = Math.ceil(POSITIONS.length/8);
	if(pages==0 || !pages) return;
	for (var i = 1; i <= pages; i++) 
	{
		if(document.getElementById("link"+i) && document.getElementById("page"+i))
		{
		    document.getElementById("link"+i).className = "no_active";
		    document.getElementById("page"+i).style.display = "none";
		}
	}
	if(document.getElementById("link"+N) && document.getElementById("page"+N))
	{
	    document.getElementById("link"+N).className = "active";
	    document.getElementById("page"+N).style.display = "block";
	}
}
