﻿var gal;
var img;
var src;
var cur_index;
var gallery_on = false;

$(document).ready(function(){
	var cnt = $(".inline").size();
	if(cnt>0){
		n = getRandom(1,cnt);
		$("#inline"+n).removeClass('hidden');
	}
	cnt = $(".bnr").size();
	if(cnt>0){
		n = getRandom(1,cnt);
		$("#bnr"+n).removeClass('hidden');
	}
	$("#shadow").click(function(){hidephoto();});
	$(".photos").click(
		function(){
			gallery_on = true;
			this.blur();
			gal = eval('photos'+this.href.substr(this.href.length-8,8));
			cur_index = 0;
			preloadphoto();
			return false;
		}
	);
});

function preloadphoto(){	
	$("#photoviewer").css({display:'none'});
	src = gal[cur_index];
	img = new Image();
	img.src = src;
	img.onload = showphoto;

	$("#shadow").css({height:$(document).height()+'px'});
	$("#photoviewer").html('<p style="text-align:center;"><img src="../img/loader.gif" alt="" title="" style="border:0;" /></p>');
	photocenter(450,80,"photoviewer");
				
	$("#shadow").removeClass("hidden");	
	//$("#photoviewer").removeClass("hidden");
}

function showphoto(){
	var nav = '';
	nav = (cur_index>0) ? nav+'<div class="prv" style="top:'+Math.round(img.height/2)+'px" onclick="cur_index--;preloadphoto();" alt="&#8592; Ctrl" title="&#8592; Ctrl">' : nav;
	nav = (cur_index<gal.length-1) ? nav+'</div><div class="next" style="top:'+Math.round(img.height/2)+'px" onclick="cur_index++;preloadphoto();" alt="Ctrl &#8594;" title="Ctrl &#8594;"></div>' : nav;
	photocenter(img.width,img.height,"photoviewer");	
	$("#photoviewer").html('<img src="'+src+'" alt="" title="" onclick="hidephoto();" />'+nav);
	$("#photoviewer").fadeTo('',1);
	
}
function hidephoto(){	
	$("#photoviewer").fadeOut('fast');
	$("#shadow").addClass("hidden");
	gallery_on = false;
}
function photocenter(viewerW,viewerH,id){
	var clientH, offset, top; 		
	clientH = this.document.body.clientHeight;	
	offset = (viewerH>clientH)? 0 : Math.floor((clientH-viewerH)/2);
	top = scrollTop()+offset;
	$("#"+id).css({top: top+'px',width: viewerW+'px', height: viewerH+'px', marginLeft: '-'+Math.floor(viewerW/2)+'px'});
}
function scrollTop(){
	var top = 0;
	if( typeof(window.pageYOffset) == 'number'){
		top = window.pageYOffset;
	}else if(document.body&&(document.body.scrollLeft||document.body.scrollTop)){
		top = document.body.scrollTop;
	}else if(document.documentElement&&(document.documentElement.scrollLeft||document.documentElement.scrollTop)){
		top = document.documentElement.scrollTop;
	}
	return top;
}
function getRandom(rmin,rmax){
	var r = Math.floor(Math.random()*100);
	while((r<rmin)||(r>rmax)){
		r = Math.floor(Math.random()*100);
	}
	return r;
}

document.onkeydown = navigation;

function navigation(event){
	if (!document.getElementById) return;
	if (window.event) event = window.event;
	if (event.ctrlKey){
		var link = null;
		var href = null;
		switch(event.keyCode ? event.keyCode : event.which ? event.which : null){
			case 0x25:
				if(gallery_on){
					if(cur_index>0){
						cur_index--;
						preloadphoto();
					}
				}
				else{
					link=document.getElementById('prv');
				}
				break;
			case 0x27:
				if(gallery_on){
					if(cur_index<gal.length-1){
						cur_index++;
						preloadphoto();
					}
				}
				else{
					link=document.getElementById('next');
				}
				break;
		}
		if(gallery_on){
		}
		else{
			if(link && link.href) document.location=link.href;
		}
	}
}
