//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 = 120;	var shamDeathBoxTop;	var shamDeathBoxGroup = new Array;	var shamDeathBoxKeyupNext = "",shamDeathBoxKeyupPrev=""; var shamDeathBoxOnOffKeyup = 'off';
function $(id){return document.getElementById(id);}
function shamDeathBoxPageSize(what,typeSize) {
  if(typeSize == null){typeSize = 'height';}
	var myHeight = 0;var myWidth = 0;
	if( typeof( window.innerWidth ) == 'number' ) {
		myHeight = window.innerHeight;
		myWidth = window.innerWidth;
	}
	else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ){
		myHeight = document.documentElement.clientHeight;
		myWidth = document.documentElement.clientWidth;
	}
	else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
		myHeight = document.body.clientHeight;
		myWidth = document.body.clientWidth;
	}
	var windowHeight = window.innerHeight;
	var windowWidth = window.innerWidth;
	$('shamDeathBoxAll').style.position ="absolute";
	var height = $('shamDeathBoxAll').clientHeight;
	var width = $('shamDeathBoxAll').clientWidth;
	$('shamDeathBoxAll').style.position ="";
	if(myHeight>height){
    if(typeSize == 'height'){return myHeight;}else{return myWidth;}
  }
  if(what == "window"){
    if(typeSize == 'height'){return myHeight;}else{return myWidth;}
  }else{
    if(typeSize == 'height'){return height;}else{return width;}
  }
}
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 = " - (<b>"+(aktualOdkaz+1)+"</b> / "+shamDeathBoxGroup[relGroup].length+") ";

	}
	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>"+fullsize+previouse+next+close+"</div> <span class='titlespan'>"+title+position+"</span>&nbsp;</div>";}else{
		var content2 = "<div id='shamDeathBoxBase' class='shamDeathBoxBase' style='top:"+(shamDeathBoxTop+3)+"px'>";
		    		    content2 +="<div id='shamDeathBoxTitle' class='shamDeathBoxTitle' ><div>"+fullsize+previouse+next+close+"</div> <span class='titlespan'>"+title+position+"</span>&nbsp;</div>";
		    content2 +="<div id='shamDeathBoxWrap' class='shamDeathBoxWrap'>";
		    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;
	var rel = odkaz.getAttribute('rel');
	var relGroup = rel.substr(rel.indexOf("["));
	if(relGroup == '[fullsize]'){var onload2 = 'shamDeathBoxFullSize();';}
	shamDeathBoxInsertContent(odkaz,"","<div id='divImgShamDeathBox'><img onload='shamDeathBoxResizeBG(this);"+onload2+"' onerror='this.src=\"./shamDeathBox/imageNotFounded.gif\";' onclick='shamDeathBoxClose()' id='shamDeathBoxIMG' src='"+imgURL+"' /></div>");
	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');
	var pageWidth = shamDeathBoxPageSize('window','width');
	if(img.height > (pageSize - shamDeathBoxBorderHeight + 3)){// zvetsovani
		if((img.height+shamDeathBoxBorderHeight) > pageSize){	img.width = ((pageSize - shamDeathBoxBorderHeight)/img.height)*img.width;	img.height = (pageSize - shamDeathBoxBorderHeight);	}
    $('divImgShamDeathBox').style.width = '';$('divImgShamDeathBox').style.height = '';
	}else{// zmensovani
		img.height = newImg.height;		img.width = newImg.width;
  	if(pageWidth-80 < img.width){var newDivWidth = (pageWidth-80);}
  	if(pageSize-120 < img.height){var newDivHeight = (pageSize-120);}

    if(newDivWidth != null || newDivHeight != null){
      if(newDivWidth == null){var newDivWidth = img.width + 20;}
      if(newDivHeight == null){var newDivHeight = img.height + 20;}
      $('divImgShamDeathBox').style.width = newDivWidth+'px';
      $('divImgShamDeathBox').style.height = newDivHeight+'px';
      var upravSirku = true;
    }
	}
	shamDeathBoxCheckSize(img);
  if(upravSirku != null){$('shamDeathBoxWrap').style.width = (newDivWidth+30)+'px';}
}
function shamDeathBoxResizeBG(img){
	$('shamDeathBoxLoading').style.display = "none";
	$('divImgShamDeathBox').style.width = '';
  $('divImgShamDeathBox').style.height = '';
	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);
