var idx=0;var anchors;var xml_url="";function getKey(e){if(e==null){keycode=event.keyCode;}else{keycode=e.which;}
key=String.fromCharCode(keycode).toLowerCase();var i=0;for(i=0;i<nextKeys.length;i++){if(nextKeys[i]==key){gotoLightbox('go_right');return false;}}
for(i=0;i<prevKeys.length;i++){if(prevKeys[i]==key){gotoLightbox('go_left');return false;}}
for(i=0;i<closeKeys.length;i++){if(closeKeys[i]==key){hideLightbox();return false;}}}
function listenkey(){document.onkeypress=getKey;}
function gotoLightbox(direction){var next_link=document.getElementById(direction);if(next_link!=null){var href=next_link.getAttribute('href');hideOnlyLightbox();showLightbox(next_link);}else{hideLightbox();}}
function getXMLCaption(href)
{var myAjax=new Ajax.Request
(xml_url,{method:'get',parameters:'',onComplete:function(req)
{setXMLCaption(req.responseXML,href)}});}
function setXMLCaption(result,href)
{var objCaption=document.getElementById('lightboxCaption');var objNumber=document.getElementById('lightboxNumber');var objTitle=document.getElementById('lightboxTitle');while(objCaption.hasChildNodes()){objCaption.removeChild(objCaption.firstChild);}
while(objNumber.hasChildNodes()){objNumber.removeChild(objNumber.firstChild);}
while(objTitle.hasChildNodes()){objTitle.removeChild(objTitle.firstChild);}
var all_source=result.getElementsByTagName('source');var i=0;for(i=0;i<all_source.length;i++){var node=all_source[i];if(node.getAttribute("id")==href){if(i!=0){var previous_node=all_source[i-1];var prev_href=previous_node.getAttribute("id");var prev_link=document.createElement("a");prev_link.setAttribute("href",prev_href);prev_link.setAttribute("id","go_left");prev_link.onclick=function(){hideOnlyLightbox();showLightbox(this);return false;}
if(previous_link_image!=''){var objbackImg=document.createElement("img");objbackImg.setAttribute("src",previous_link_image);prev_link.appendChild(objbackImg);}else{var objbackText=document.createElement("div");objbackText.setAttribute('id','backText');objbackText.innerHTML=backText;prev_link.appendChild(objbackText);}
objCaption.appendChild(prev_link);}
if(i<(all_source.length-1)){var next_node=all_source[i+1];var next_href=next_node.getAttribute("id");var next_link=document.createElement("a");next_link.setAttribute("href",next_href);next_link.setAttribute("id","go_right");next_link.onclick=function(){hideOnlyLightbox();showLightbox(this);return false;}
if(next_link_image!=''){var objnextImg=document.createElement("img");objnextImg.setAttribute("src",next_link_image);next_link.appendChild(objnextImg);}else{var objnextText=document.createElement("div");objnextText.setAttribute('id','nextText');objnextText.innerHTML=nextText;next_link.appendChild(objnextText);}
objCaption.appendChild(next_link);}
var number_elm=node.getElementsByTagName("number");var number=document.createTextNode
(number_elm[0].firstChild.nodeValue);objNumber.appendChild(number);var title_elm=node.getElementsByTagName("title");var title=document.createTextNode
(title_elm[0].firstChild.nodeValue);objTitle.appendChild(title);var caption_elm=node.getElementsByTagName("caption");var caption=document.createTextNode
(caption_elm[0].firstChild.nodeValue);objCaption.appendChild(caption);return;}}}
function getPageScroll(){var yScroll;if(self.pageYOffset){yScroll=self.pageYOffset;}else if(document.documentElement&&document.documentElement.scrollTop){yScroll=document.documentElement.scrollTop;}else if(document.body){yScroll=document.body.scrollTop;}
arrayPageScroll=new Array('',yScroll)
return arrayPageScroll;}
function getPageSize(){var xScroll,yScroll;if(window.innerHeight&&window.scrollMaxY){xScroll=document.body.scrollWidth;yScroll=window.innerHeight+window.scrollMaxY;}else if(document.body.scrollHeight>document.body.offsetHeight){xScroll=document.body.scrollWidth;yScroll=document.body.scrollHeight;}else{xScroll=document.body.offsetWidth;yScroll=document.body.offsetHeight;}
var windowWidth,windowHeight;if(self.innerHeight){windowWidth=self.innerWidth;windowHeight=self.innerHeight;}else if(document.documentElement&&document.documentElement.clientHeight){windowWidth=document.documentElement.clientWidth;windowHeight=document.documentElement.clientHeight;}else if(document.body){windowWidth=document.body.clientWidth;windowHeight=document.body.clientHeight;}
if(yScroll<windowHeight){pageHeight=windowHeight;}else{pageHeight=yScroll;}
if(xScroll<windowWidth){pageWidth=windowWidth;}else{pageWidth=xScroll;}
arrayPageSize=new Array(pageWidth,pageHeight,windowWidth,windowHeight)
return arrayPageSize;}
function showLightbox(objLink)
{var objOverlay=document.getElementById('overlay');var objLightbox=document.getElementById('lightbox');var objImage=document.getElementById('lightboxImage');var objLoadingImage=document.getElementById('loadingImage');var objLightboxDetails=document.getElementById('lightboxDetails');var objCaption=document.getElementById('lightboxCaption');var objNumber=document.getElementById('lightboxNumber');var objTitle=document.getElementById('lightboxTitle');var arrayPageSize=getPageSize();var arrayPageScroll=getPageScroll();if(objLoadingImage){objLoadingImage.style.top=(arrayPageScroll[1]
+((arrayPageSize[3]-35-objLoadingImage.height)/2)+'px');objLoadingImage.style.left=(((arrayPageSize[0]-20-objLoadingImage.width)/2)+'px');objLoadingImage.style.display='block';}
objOverlay.style.height=(arrayPageSize[1]+'px');objOverlay.style.display='block';var objLink_rel=objLink.getAttribute('rel');if(objLink_rel!=""&&objLink_rel!=null){xml_url=objLink_rel.substring(9,objLink_rel.length)+'.xml';}
if(xml_url!=""){getXMLCaption(objLink.href);}
imgPreload=new Image();imgPreload.onload=function(){objImage.src=objLink.href;var lightboxTop=arrayPageScroll[1]
+((arrayPageSize[3]-35-imgPreload.height)/2);var lightboxLeft=((arrayPageSize[0]-20-imgPreload.width)/2);objLightbox.style.top=(lightboxTop<0)?"0px":lightboxTop+"px";objLightbox.style.left=(lightboxLeft<0)?"0px":lightboxLeft+"px";objLightboxDetails.style.width=imgPreload.width+'px';objCaption.style.display='none';objNumber.style.display='none';objTitle.style.display='none';selects=document.getElementsByTagName("select");for(i=0;i!=selects.length;i++){selects[i].style.visibility="hidden";}
objLightbox.style.display='none';arrayPageSize=getPageSize();objOverlay.style.height=(arrayPageSize[1]+'px');}
imgPreload.src=objLink.href;waitOnComplete(imgPreload);}
function waitOnComplete(obj){if(obj.complete){var showImg=function(){displayLightbox(obj)};setTimeout(showImg,500);}else{var loopWhenNotComplete=function(){waitOnComplete(obj);}
setTimeout(loopWhenNotComplete,500);}}
function displayLightbox(obj){var objLightbox=document.getElementById('lightbox');var objCaption=document.getElementById('lightboxCaption');var objNumber=document.getElementById('lightboxNumber');var objTitle=document.getElementById('lightboxTitle');var objImage=document.getElementById('lightboxImage');var objLoadingImage=document.getElementById('loadingImage');var lightboxTop=arrayPageScroll[1]
+((arrayPageSize[3]-35-imgPreload.height)/2);var lightboxLeft=((arrayPageSize[0]-40-imgPreload.width)/2);objLightbox.style.top=(lightboxTop<0)?"0px":lightboxTop+"px";objLightbox.style.left=(lightboxLeft<0)?"0px":lightboxLeft+"px";objLightbox.style.display='block';objLightbox.style.width=imgPreload.width+'px';objImage.style.visibility='visible';objImage.src=obj.src;objCaption.style.width=imgPreload.width+'px';objCaption.style.display='block';objNumber.style.display='inline';objTitle.style.display='inline';listenkey();if(objLoadingImage){objLoadingImage.style.display='none';}}
function hideLightbox()
{var objOverlay=document.getElementById('overlay');var objLightbox=document.getElementById('lightbox');objOverlay.style.display='none';objLightbox.style.display='none';selects=document.getElementsByTagName("select");for(i=0;i!=selects.length;i++){selects[i].style.visibility="visible";}
document.onkeypress='';}
function hideOnlyLightbox()
{var objLightbox=document.getElementById('lightbox');objLightbox.style.display='none';}
function initLightbox()
{if(!document.getElementsByTagName){return false;}
var anchors=document.getElementsByTagName("a");var i=0;for(i=0;i<anchors.length;i++){var anchor=anchors[i];if(anchor.getAttribute("href")){var rel_attr=anchor.getAttribute("rel");if(rel_attr!=null&&rel_attr.indexOf("lightbox")==0){anchor.onclick=function(){showLightbox(this);return false;}}}}
var objBody=document.getElementsByTagName("body").item(0);var objOverlay=document.createElement("div");objOverlay.setAttribute('id','overlay');objOverlay.style.display='none';objOverlay.style.position='absolute';objOverlay.style.top='0';objOverlay.style.left='0';objOverlay.style.zIndex='90';objOverlay.style.width='100%';objBody.insertBefore(objOverlay,objBody.firstChild);var arrayPageSize=getPageSize();var arrayPageScroll=getPageScroll();var imgPreloader=new Image();imgPreloader.onload=function(){var objLoadingImageLink=document.createElement("a");objLoadingImageLink.setAttribute('href','#');objLoadingImageLink.onclick=function(){hideLightbox();return false;}
objOverlay.appendChild(objLoadingImageLink);var objLoadingImage=document.createElement("img");objLoadingImage.src=loadingImage;objLoadingImage.setAttribute('id','loadingImage');objLoadingImage.style.position='absolute';objLoadingImage.style.zIndex='150';objLoadingImageLink.appendChild(objLoadingImage);imgPreloader.onload=function(){};return false;}
imgPreloader.src=loadingImage;var objLightbox=document.createElement("div");objLightbox.setAttribute('id','lightbox');objLightbox.style.display='none';objLightbox.style.position='absolute';objLightbox.style.zIndex='100';objBody.insertBefore(objLightbox,objOverlay.nextSibling);var objLightboxDetails=document.createElement("div");objLightboxDetails.setAttribute('id','lightboxDetails');objLightbox.appendChild(objLightboxDetails);var objLink=document.createElement("a");objLink.setAttribute('id','closeLightbox');objLink.setAttribute('href','#');objLink.onclick=function(){hideLightbox();return false;}
objLightbox.appendChild(objLink);var imgPreloadCloseButton=new Image();imgPreloadCloseButton.onload=function(){var objCloseButton=document.createElement("img");objCloseButton.src=closeButton;objCloseButton.setAttribute('id','closeButton');objCloseButton.style.position='absolute';objCloseButton.style.cursor='default';objCloseButton.style.zIndex='200';objLink.appendChild(objCloseButton);return false;}
imgPreloadCloseButton.src=closeButton;var objImage=document.createElement("img");objImage.style.cursor='pointer';objImage.setAttribute('id','lightboxImage');objImage.setAttribute('title',imageTitle);objImage.onclick=function(){gotoLightbox('go_right');return false;}
objImage.style.visibility='hidden';objLightbox.appendChild(objImage);var objCaption=document.createElement("div");objCaption.setAttribute('id','lightboxCaption');objCaption.style.display='none';objLightbox.appendChild(objCaption);var objuserMsg=document.createElement("div");objuserMsg.setAttribute('id','userMsg');objuserMsg.innerHTML=objuserMessage;objLightboxDetails.appendChild(objuserMsg);var objTitle=document.createElement("div");objTitle.setAttribute('id','lightboxTitle');objTitle.style.display='none';objLightboxDetails.appendChild(objTitle);var objNumber=document.createElement("div");objNumber.setAttribute('id','lightboxNumber');objNumber.style.display='none';objLightboxDetails.appendChild(objNumber);slidebox_end_init()}
function addLoadEvent(func)
{var oldonload=window.onload;if(typeof window.onload!='function'){window.onload=func;}else{window.onload=function(){oldonload();func();}}}
addLoadEvent(initLightbox);
