window.onDomReady = DomReady;
function DomReady(fn){	if(document.addEventListener){document.addEventListener("DOMContentLoaded", fn, false);}else{document.onreadystatechange = function(){readyState(fn)}}}
function readyState(fn){if(document.readyState == "interactive"){fn();}}
var shamDeathBoxBorderHeight = 60;	var shamDeathBoxTop;	var shamDeathBoxGroup = new Array;	var shamDeathBoxKeyupNext = "",shamDeathBoxKeyupPrev=""; var shamDeathBoxOnOffKeyup = 'off';
function $(id){return document.getElementById(id);}
function shamDeathBoxPageSize(what) {var myHeight = 0;if( typeof( window.innerWidth ) == 'number' ) {myHeight = window.innerHeight;} else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {myHeight = document.documentElement.clientHeight;} else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {myHeight = document.body.clientHeight;}var windowHeight = window.innerHeight;$('shamDeathBoxAll').style.position ="absolute";var height = $('shamDeathBoxAll').clientHeight;$('shamDeathBoxAll').style.position ="";if(myHeight>height){return myHeight;}if(what == "window"){return myHeight;}else{return height;}}
function setShamDeathBoxTop(){if (document.documentElement && document.documentElement.scrollTop){shamDeathBoxTop = document.documentElement.scrollTop;}else if(document.body){shamDeathBoxTop = document.body.scrollTop;}}
function shamDeathBoxClose(){$('shamDeathBoxUp').style.display = 'none';$('shamDeathBoxImage').style.display = 'none';$('shamDeathBoxLoading').style.display = "none";shamDeathBoxOnOffKeyup = 'off';}
window.onkeyup = function (event) {  		
	if (event.keyCode == 27) {shamDeathBoxClose();}								// Esc
	if(shamDeathBoxOnOffKeyup == 'on'){
		if (event.keyCode == 37) {setTimeout(shamDeathBoxKeyupPrev,0);}			// Left
		else if (event.keyCode == 39) {setTimeout(shamDeathBoxKeyupNext,0);}	// Right
  	}
}
function shamDeathBox(){
	var body = document.getElementsByTagName('body');
	body[0].innerHTML = "<div id=\"shamDeathBoxAll\">"+body[0].innerHTML+"</div><div id=\"shamDeathBoxUp\"></div><div id=\"shamDeathBoxImage\"></div><div id='shamDeathBoxLoading'><img src=\"./shamDeathBox/shamDeathLoader.gif\" alt=\"loading\" /></div>";
	var odkazy = document.getElementsByTagName('a');
	for(var i = 0;i<odkazy.length;i++){
		var odkaz = odkazy[i];
		var rel = String(odkaz.getAttribute('rel'));
		if(rel.match('shamDeathIframe') != null){
		  odkaz.onclick = function() {shamDeathBoxShowIframe(this);return false;}
		}else if(rel.match('shamDeathBox') != null){
			odkaz.onclick = function() {shamDeathBoxShowPictures(this);return false;}
		}else if(rel.match('shamDeathDiv') != null){
			odkaz.onclick = function() {shamDeathBoxShowDiv(this);return false;}
			$(odkaz.getAttribute('rel').split('-')[3]).style.display='none';
		}
		//if(rel.match('shamDeathIframe') != null || rel.match('shamDeathBox') != null){
			if(rel.indexOf("[") != (-1)){
				var relGroup = rel.substr(rel.indexOf("["));
				if(shamDeathBoxGroup[relGroup]==undefined){
					shamDeathBoxGroup[relGroup] = new Array;					
				}
				var j = shamDeathBoxGroup[relGroup].length;
				shamDeathBoxGroup[relGroup][j] = odkaz;
			}
		//}
	}
}
function shamDeathBoxInsertContent(odkaz,what,content){	
	var next = "",	previouse = "", position = "", fullsize="", title="", close="";
	var pageSize = shamDeathBoxPageSize('');
	if(content!=""){
		var iframe = $('shamDeathBoxUp');
		var iframe2 = $('shamDeathBoxImage');	
		iframe2.style.display = 'block';	
		iframe.style.display = 'block';	
		iframe.style.height	= pageSize+15+"px";
		if(what==''){if(navigator.appName == "Opera"){	iframe.style.background = '';}	}
	}
	var rel = odkaz.getAttribute('rel');
	var relGroup = rel.substr(rel.indexOf("["));
	if ( rel.indexOf("[") != (-1)){
		shamDeathBoxOnOffKeyup = 'on';
		for(var i = 0;i<shamDeathBoxGroup[relGroup].length;i++){
			if(odkaz == shamDeathBoxGroup[relGroup][i]){	var aktualOdkaz = i;}
		}
		if(aktualOdkaz < (shamDeathBoxGroup[relGroup].length-1)){shamDeathBoxKeyupNext = "shamDeathBoxNextPrev"+what+"('"+rel+"',"+(aktualOdkaz+1)+")";next = "<span onclick=\"shamDeathBoxNextPrev"+what+"('"+rel+"',"+(aktualOdkaz+1)+");\"><img src=\"./shamDeathBox/next.gif\" alt=\"next\"/></span>";}else{shamDeathBoxKeyupNext = "";}
		if(aktualOdkaz > 0){shamDeathBoxKeyupPrev = "shamDeathBoxNextPrev"+what+"('"+rel+"',"+(aktualOdkaz-1)+")"; previouse	= "<span onclick=\"shamDeathBoxNextPrev"+what+"('"+rel+"',"+(aktualOdkaz-1)+");\"><img src=\"./shamDeathBox/prev.gif\" alt=\"previous\"/></span>";}else{shamDeathBoxKeyupPrev = "";}		
		position = "<span>(<b>"+(aktualOdkaz+1)+"</b> / "+shamDeathBoxGroup[relGroup].length+")</span> ";		
		
	}	
	fullsize = "<span id='shamDeathBoxFullsize' style='display: none;' onclick=\"shamDeathBoxFullSize();\"><img src=\"./shamDeathBox/fullsize.gif\" alt=\"fullsize\"/></span>";
	close = "<span onclick='shamDeathBoxClose()'><img src=\"./shamDeathBox/close.gif\" alt=\"close\"/></span>";
	title = odkaz.getAttribute('title');
	if(what=="Div"){fullsize="";}
	if(content==""){$('shamDeathBoxTitle').innerHTML="<div>"+previouse+position+next+fullsize+close+"<a href='http://www.shamania.cz/shamdeathbox' target='_blank' title='HomePage of shamDeathBox'><img src='./shamDeathBox/icon.gif' alt='icon' /></a></div> "+title+"</div>";}else{
		var content2 = "<div id='shamDeathBoxBase' class='shamDeathBoxBase' style='top:"+(shamDeathBoxTop+3)+"px'>";
		    content2 +="<div id='shamDeathBoxWrap' class='shamDeathBoxWrap'>";
		    content2 +="<div id='shamDeathBoxTitle' class='shamDeathBoxTitle' ><div>"+previouse+position+next+fullsize+close+"<a href='http://www.shamania.cz/shamdeathbox' target='_blank' title='HomePage of shamDeathBox'><img src='./shamDeathBox/icon.gif' alt='icon' /></a></div> "+title+"</div>";
		    content2 +=content;
		    content2 +="</div>";	
		    content2 +="</div>";
		$('shamDeathBoxImage').innerHTML = content2;
	}
}
function shamDeathBoxShowPictures(odkaz){
	setShamDeathBoxTop();
	$('shamDeathBoxLoading').style.display = "block";
	$('shamDeathBoxLoading').style.top = (shamDeathBoxTop + (shamDeathBoxPageSize('window') / 2))-50+"px";		
	var imgURL = odkaz;
	shamDeathBoxInsertContent(odkaz,"","<img onload='shamDeathBoxResizeBG(this);' onerror='this.src=\"./shamDeathBox/imageNotFounded.gif\";' onclick='shamDeathBoxClose()' id='shamDeathBoxIMG' src='"+imgURL+"' />");
	if(navigator.appName == "Opera"){
		$('shamDeathBoxWrap').style.display='block';
		$('shamDeathBoxWrap').style.background = 'transparent';
	}
}
function shamDeathBoxNextPrev(rel,index){
	$('shamDeathBoxLoading').style.display = "block";
	var relGroup = rel.substr(rel.indexOf("["));
	var img = $('shamDeathBoxIMG');
	var smallImg = shamDeathBoxGroup[relGroup][index].getElementsByTagName('img')[0];
	if(smallImg != undefined){
		img.onload = '';
		img.src = smallImg.getAttribute('src');
		var newImg = new Image();	
		newImg.onload = function(){$('shamDeathBoxIMG').src = this.src;shamDeathBoxResizeBG($('shamDeathBoxIMG'));};	
		newImg.onerror= function(){this.src="./shamDeathBox/imageNotFounded.gif";}
		newImg.src =shamDeathBoxGroup[relGroup][index];		
	}else{
		img.onload = function(){shamDeathBoxResizeBG($('shamDeathBoxIMG'));}
		img.onerror= function(){this.src="./shamDeathBox/imageNotFounded.gif";}
		img.src = shamDeathBoxGroup[relGroup][index];		
	}
	shamDeathBoxInsertContent(shamDeathBoxGroup[relGroup][index],"","");
}
function shamDeathBoxFullSize(){
	var img = $('shamDeathBoxIMG');
	var newImg = new Image();
	newImg.src =img.src;
	var pageSize = shamDeathBoxPageSize('window');
	if(img.height > (pageSize - shamDeathBoxBorderHeight + 3)){// zvetsovani
		if((img.height+shamDeathBoxBorderHeight) > pageSize){	img.width = ((pageSize - shamDeathBoxBorderHeight)/img.height)*img.width;	img.height = (pageSize - shamDeathBoxBorderHeight);	}
	}else{// zmensovani
		img.height = newImg.height;		img.width = newImg.width;
	}	
	shamDeathBoxCheckSize(img);	
}
function shamDeathBoxResizeBG(img){	
	$('shamDeathBoxLoading').style.display = "none";
	var pageSize = shamDeathBoxPageSize('window');
	var newImg = new Image();
	newImg.src =img.src;
	img.height = newImg.height;
	img.width = newImg.width;
	if((newImg.height+shamDeathBoxBorderHeight)*1 > pageSize*1){
		img.width = ((pageSize - shamDeathBoxBorderHeight)/newImg.height)*newImg.width;	
		img.height = (pageSize - shamDeathBoxBorderHeight);
		$('shamDeathBoxFullsize').style.display = 'block';
	}else{
		$('shamDeathBoxFullsize').style.display = 'none';
	}
	shamDeathBoxCheckSize(img);		
	if(navigator.appName == "Opera"){$('shamDeathBoxWrap').style.background = 'white';}					
}
function shamDeathBoxCheckSize(element,width){
	var pageSize = shamDeathBoxPageSize('');
	var iframe = $('shamDeathBoxUp');
	var rozdil = pageSize - ($('shamDeathBoxWrap').clientHeight + shamDeathBoxTop);
	if(rozdil<0){iframe.style.height= ((-1) * rozdil+pageSize + 15)+"px";		}
	$('shamDeathBoxWrap').style.display='block';
	if(width==undefined){width=32;}
	$('shamDeathBoxWrap').style.width=(element.clientWidth+width)+"px";
	$('shamDeathBoxTitle').style.display='block';
}
// IFRAME SECTION //
function shamDeathBoxShowIframe(odkaz){
	setShamDeathBoxTop();
   	var rel = odkaz.getAttribute('rel');
   	var relGroup = rel.substr(rel.indexOf("["));
   	var title = odkaz.getAttribute('title');if(title==null){title="";}
   	if(rel.match('-') != null){  var iframeWidth = rel.split('-')[1];   var iframeHeight = rel.split('-')[2];}
   	else{var iframeWidth = "500px"; var iframeHeight = "500px";}
	shamDeathBoxInsertContent(odkaz,"Iframe","<iframe frameborder='0' id='shamDeathBoxIframe' src='"+odkaz+"'  width='"+iframeWidth+"' height='"+iframeHeight+"'></iframe>");
	shamDeathBoxCheckSize($('shamDeathBoxIframe'),0);
}
function shamDeathBoxNextPrevIframe(rel,index){
	var relGroup = rel.substr(rel.indexOf("["));
	$('shamDeathBoxIframe').src = shamDeathBoxGroup[relGroup][index];
	var nextRel = shamDeathBoxGroup[relGroup][index].getAttribute('rel');
   	if(nextRel.match('-') != null){  var iframeWidth = nextRel.split('-')[1];   var iframeHeight = nextRel.split('-')[2];}
   	else{var iframeWidth = "500px"; var iframeHeight = "500px";}
   	$('shamDeathBoxIframe').width=iframeWidth;
   	$('shamDeathBoxIframe').height=iframeHeight;
   	shamDeathBoxCheckSize($('shamDeathBoxIframe'),0);
	shamDeathBoxInsertContent(shamDeathBoxGroup[relGroup][index],"Iframe","");
}
// DIV SECTION //
function shamDeathBoxShowDiv(odkaz){
	setShamDeathBoxTop();
   	var rel = odkaz.getAttribute('rel');
   	var divWidth = rel.split('-')[1];   var divHeight = rel.split('-')[2];   var divId = rel.split('-')[3];
   	var divClass = $(divId).getAttribute('class');
   	if(divClass!=null){divClass = "class='"+divClass+"'";}
	shamDeathBoxInsertContent(odkaz,"Div","<div id='shamDeathBoxDiv'><div "+divClass+">"+$(divId).innerHTML+"</div></div>");
   	$('shamDeathBoxDiv').style.width=divWidth;
   	$('shamDeathBoxDiv').style.height=divHeight;
	shamDeathBoxCheckSize($('shamDeathBoxDiv'),0);
}
function shamDeathBoxNextPrevDiv(rel,index){
	var relGroup = rel.substr(rel.indexOf("["));
	rel = shamDeathBoxGroup[relGroup][index].getAttribute('rel');
	var divWidth = rel.split('-')[1];   var divHeight = rel.split('-')[2];   var divId = rel.split('-')[3];
   	var divClass = $(divId).getAttribute('class');
   	if(divClass!=null){divClass = "class='"+divClass+"'";}
   	$('shamDeathBoxDiv').style.width=divWidth;
   	$('shamDeathBoxDiv').style.height=divHeight;
   	$('shamDeathBoxDiv').innerHTML="<div "+divClass+">"+$(divId).innerHTML+"</div>";
	shamDeathBoxInsertContent(shamDeathBoxGroup[relGroup][index],"Div","");	
	shamDeathBoxCheckSize($('shamDeathBoxDiv'),0);
}
window.onDomReady(shamDeathBox);