var inCap=true var zTme=25 var zStp=15 var inFad=1 var mBord=90 var shSet='0px 5px 25px rgba(0, 0, 0, ' var ziURI='http://www.seibit.de/tools/imgZoom/img/' var myWidth=0,myHeight=0,myScroll=0;myScrollWidth=0;myScrollHeight=0 var zoomOpen=false,preloadFrame=1,preloadActive=false,preloadTime=0,imgPreload=new Image() var preloadAnimTimer=0 var zoomActive=new Array();var zoomTimer=new Array() var zoomOrigW=new Array();var zoomOrigH=new Array() var zoomOrigX=new Array();var zoomOrigY=new Array() var zoomID="ZoomBox" var theID="ZoomImage" var zoomCaption="ZoomCaption" var zoomCaptionDiv="ZoomCapDiv" if(navigator.userAgent.indexOf("MSIE")!=-1){ var browserIsIE=true} function imgZoomPrep(){ prepZooms() insertZoomHTML() zoomdiv=document.getElementById(zoomID) zoomimg=document.getElementById(theID)} function prepZooms(){ if(! document.getElementsByTagName){ return} var links=document.getElementsByTagName("a") for(i=0;i12)preloadFrame=1 }else{ document.getElementById("ZoomSpin").style.visibility="hidden" clearInterval(preloadAnimTimer) preloadAnimTimer=0 zoomIn(preloadFrom)}} function zoomClick(from,evt){ var shift=getShift(evt) if(! evt&&window.event&&(window.event.metaKey || window.event.altKey)){ return true }else if(evt&&(evt.metaKey|| evt.altKey)){ return true} getSize() if(preloadActive==true){ if(preloadAnimTimer==0){ preloadFrom=from preloadAnimStart()} }else{ zoomIn(from,shift)} return false} function zoomIn(from,shift){ zoomimg.src=from.getAttribute("href") if(from.childNodes[0].width){ startW=from.childNodes[0].width startH=from.childNodes[0].height startPos=findElementPos(from.childNodes[0]) }else{ startW=50 startH=12 startPos=findElementPos(from)} hostX=startPos[0] hostY=startPos[1] if(document.getElementById('scroller')){ hostX=hostX-document.getElementById('scroller').scrollLeft} endW=imgPreload.width endH=imgPreload.height if(zoomActive[theID] !=true){ if(document.getElementById("ShadowBox")){ document.getElementById("ShadowBox").style.visibility="hidden" }else if(! browserIsIE){ if(fadeActive["ZoomImage"]){ clearInterval(fadeTimer["ZoomImage"]) fadeActive["ZoomImage"]=false fadeTimer["ZoomImage"]=false} document.getElementById("ZoomImage").style.webkitBoxShadow=shSet+'0.0)'} document.getElementById("ZoomClose").style.visibility="hidden" if(inCap){ document.getElementById(zoomCaptionDiv).style.visibility="hidden" if(from.getAttribute('title')&&inCap){ document.getElementById(zoomCaption).innerHTML=from.getAttribute('title') }else{ document.getElementById(zoomCaption).innerHTML=""}} zoomOrigW[theID]=startW zoomOrigH[theID]=startH zoomOrigX[theID]=hostX zoomOrigY[theID]=hostY zoomimg.style.width=startW+'px' zoomimg.style.height=startH+'px' zoomdiv.style.left=hostX+'px' zoomdiv.style.top=hostY+'px' if(inFad==1){ setOpacity(0,zoomID)} zoomdiv.style.visibility="visible" sizeRatio=endW/endH if(endW>myWidth-mBord){ endW=myWidth-mBord endH=endW/sizeRatio} if(endH>myHeight-mBord){ endH=myHeight-mBord endW=endH*sizeRatio} zoomChangeX=((myWidth/2)-(endW/2)-hostX) zoomChangeY=(((myHeight/2)-(endH/2)-hostY)+myScroll) zoomChangeW=(endW-startW) zoomChangeH=(endH-startH) if(shift){ tempSteps=zStp*7 }else{ tempSteps=zStp} zoomCurrent=0 if(inFad==1){ fadeCurrent=0 fadeAmount=(0-100)/tempSteps }else{ fadeAmount=0} zoomTimer[theID]=setInterval("zoomElement('"+zoomID+"', '"+theID+"', "+zoomCurrent+", "+startW+", "+zoomChangeW+", "+startH+", "+zoomChangeH+", "+hostX+", "+zoomChangeX+", "+hostY+", "+zoomChangeY+", "+tempSteps+", "+inFad+", "+fadeAmount+", 'zoomDoneIn(zoomID)')",zTme) zoomActive[theID]=true}} function zoomOut(from,evt){ if(getShift(evt)){ tempSteps=zStp*7 }else{ tempSteps=zStp} if(zoomActive[theID] !=true){ if(document.getElementById("ShadowBox")){ document.getElementById("ShadowBox").style.visibility="hidden" }else if(! browserIsIE){ if(fadeActive["ZoomImage"]){ clearInterval(fadeTimer["ZoomImage"]) fadeActive["ZoomImage"]=false fadeTimer["ZoomImage"]=false} document.getElementById("ZoomImage").style.webkitBoxShadow=shSet+'0.0)'} document.getElementById("ZoomClose").style.visibility="hidden" if(inCap&&document.getElementById(zoomCaption).innerHTML !=""){ document.getElementById(zoomCaptionDiv).style.visibility="hidden"} startX=parseInt(zoomdiv.style.left) startY=parseInt(zoomdiv.style.top) startW=zoomimg.width startH=zoomimg.height zoomChangeX=zoomOrigX[theID]-startX zoomChangeY=zoomOrigY[theID]-startY zoomChangeW=zoomOrigW[theID]-startW zoomChangeH=zoomOrigH[theID]-startH zoomCurrent=0 if(inFad==1){ fadeCurrent=0 fadeAmount=(100-0)/tempSteps }else{ fadeAmount=0} zoomTimer[theID]=setInterval("zoomElement('"+zoomID+"', '"+theID+"', "+zoomCurrent+", "+startW+", "+zoomChangeW+", "+startH+", "+zoomChangeH+", "+startX+", "+zoomChangeX+", "+startY+", "+zoomChangeY+", "+tempSteps+", "+inFad+", "+fadeAmount+", 'zoomDone(zoomID, theID)')",zTme) zoomActive[theID]=true}} function zoomDoneIn(zoomdiv,theID){ zoomOpen=true zoomdiv=document.getElementById(zoomdiv) if(document.getElementById("ShadowBox")){ setOpacity(0,"ShadowBox") shadowdiv=document.getElementById("ShadowBox") shadowLeft=parseInt(zoomdiv.style.left)-13 shadowTop=parseInt(zoomdiv.style.top)-8 shadowWidth=zoomdiv.offsetWidth+26 shadowHeight=zoomdiv.offsetHeight+26 shadowdiv.style.width=shadowWidth+'px' shadowdiv.style.height=shadowHeight+'px' shadowdiv.style.left=shadowLeft+'px' shadowdiv.style.top=shadowTop+'px' document.getElementById("ShadowBox").style.visibility="visible" fadeElementSetup("ShadowBox",0,100,5) }else if(! browserIsIE){ fadeElementSetup("ZoomImage",0,.8,5,0,"shadow")} if(inCap&&document.getElementById(zoomCaption).innerHTML !=""){ zoomcapd=document.getElementById(zoomCaptionDiv) zoomcapd.style.top=parseInt(zoomdiv.style.top)+(zoomdiv.offsetHeight+15)+'px' zoomcapd.style.left=(myWidth/2)-(zoomcapd.offsetWidth/2)+'px' zoomcapd.style.visibility="visible"} if(!browserIsIE)setOpacity(0,"ZoomClose") document.getElementById("ZoomClose").style.visibility="visible" if(!browserIsIE)fadeElementSetup("ZoomClose",0,100,5) document.onkeypress=getKey} function zoomDone(zoomdiv,theID){ zoomOpen=false zoomOrigH[theID]="" zoomOrigW[theID]="" document.getElementById(zoomdiv).style.visibility="hidden" zoomActive[theID]==false document.onkeypress=null} function zoomElement(zoomdiv,theID,zoomCurrent,zoomStartW,zoomChangeW,zoomStartH,zoomChangeH,zoomStartX,zoomChangeX,zoomStartY,zoomChangeY,zStp,inFad,fadeAmount,execWhenDone){ if(zoomCurrent==(zStp+1)){ zoomActive[theID]=false clearInterval(zoomTimer[theID]) if(execWhenDone !=""){ eval(execWhenDone)} }else{ if(inFad==1){ if(fadeAmount<0){ setOpacity(Math.abs(zoomCurrent*fadeAmount),zoomdiv) }else{ setOpacity(100-(zoomCurrent*fadeAmount),zoomdiv)}} moveW=cubicInOut(zoomCurrent,zoomStartW,zoomChangeW,zStp) moveH=cubicInOut(zoomCurrent,zoomStartH,zoomChangeH,zStp) moveX=cubicInOut(zoomCurrent,zoomStartX,zoomChangeX,zStp) moveY=cubicInOut(zoomCurrent,zoomStartY,zoomChangeY,zStp) document.getElementById(zoomdiv).style.left=moveX+'px' document.getElementById(zoomdiv).style.top=moveY+'px' zoomimg.style.width=moveW+'px' zoomimg.style.height=moveH+'px' zoomCurrent++ clearInterval(zoomTimer[theID]) zoomTimer[theID]=setInterval("zoomElement('"+zoomdiv+"', '"+theID+"', "+zoomCurrent+", "+zoomStartW+", "+zoomChangeW+", "+zoomStartH+", "+zoomChangeH+", "+zoomStartX+", "+zoomChangeX+", "+zoomStartY+", "+zoomChangeY+", "+zStp+", "+inFad+", "+fadeAmount+", '"+execWhenDone+"')",zTme)}} function getKey(evt){ if(! evt){ theKey=event.keyCode }else{ theKey=evt.keyCode} if(theKey==27){ zoomOut(this,evt)}} function fadeOut(elem){ if(elem.id){ fadeElementSetup(elem.id,100,0,10)}} function fadeIn(elem){ if(elem.id){ fadeElementSetup(elem.id,0,100,10)}} var fadeActive=new Array() var fadeQueue=new Array() var fadeTimer=new Array() var fadeClose=new Array() var fadeMode=new Array() function fadeElementSetup(theID,fdStart,fdEnd,fdSteps,fdClose,fdMode){ if(fadeActive[theID]==true){ fadeQueue[theID]=new Array(theID,fdStart,fdEnd,fdSteps) }else{ fadeSteps=fdSteps fadeCurrent=0 fadeAmount=(fdStart-fdEnd)/fadeSteps fadeTimer[theID]=setInterval("fadeElement('"+theID+"', '"+fadeCurrent+"', '"+fadeAmount+"', '"+fadeSteps+"')",15) fadeActive[theID]=true fadeMode[theID]=fdMode if(fdClose==1){ fadeClose[theID]=true }else{ fadeClose[theID]=false}}} function fadeElement(theID,fadeCurrent,fadeAmount,fadeSteps){ if(fadeCurrent==fadeSteps){ clearInterval(fadeTimer[theID]) fadeActive[theID]=false fadeTimer[theID]=false if(fadeClose[theID]==true){ document.getElementById(theID).style.visibility="hidden"} if(fadeQueue[theID]&&fadeQueue[theID] !=false){ fadeElementSetup(fadeQueue[theID][0],fadeQueue[theID][1],fadeQueue[theID][2],fadeQueue[theID][3]) fadeQueue[theID]=false} }else{ fadeCurrent++ if(fadeMode[theID]=="shadow"){ if(fadeAmount<0){ document.getElementById(theID).style.webkitBoxShadow=shSet+(Math.abs(fadeCurrent*fadeAmount))+')' }else{ document.getElementById(theID).style.webkitBoxShadow=shSet+(100-(fadeCurrent*fadeAmount))+')'} }else{ if(fadeAmount<0){ setOpacity(Math.abs(fadeCurrent*fadeAmount),theID) }else{ setOpacity(100-(fadeCurrent*fadeAmount),theID)}} clearInterval(fadeTimer[theID]) fadeTimer[theID]=setInterval("fadeElement('"+theID+"', '"+fadeCurrent+"', '"+fadeAmount+"', '"+fadeSteps+"')",15)}} function setOpacity(opacity,theID){ var object=document.getElementById(theID).style if(navigator.userAgent.indexOf("Firefox")!=-1){ if(opacity==100){opacity=99.9999;}} object.filter="alpha(opacity="+opacity+")" object.opacity=(opacity/100)} function linear(t,b,c,d){ return c*t/d+b} function sineInOut(t,b,c,d){ return-c/2*(Math.cos(Math.PI*t/d)-1)+b} function cubicIn(t,b,c,d){ return c*(t/=d)*t*t+b} function cubicOut(t,b,c,d){ return c*((t=t/d-1)*t*t+1)+b} function cubicInOut(t,b,c,d){ if((t/=d/2)<1)return c/2*t*t*t+b return c/2*((t-=2)*t*t+2)+b} function bounceOut(t,b,c,d){ if((t/=d)<(1/2.75)){ return c*(7.5625*t*t)+b }else if(t<(2/2.75)){ return c*(7.5625*(t-=(1.5/2.75))*t+.75)+b }else if(t<(2.5/2.75)){ return c*(7.5625*(t-=(2.25/2.75))*t+.9375)+b }else{ return c*(7.5625*(t-=(2.625/2.75))*t+.984375)+b}} function getSize(){ if(self.innerHeight){ myWidth=window.innerWidth myHeight=window.innerHeight myScroll=window.pageYOffset }else if(document.documentElement&&document.documentElement.clientHeight){ myWidth=document.documentElement.clientWidth myHeight=document.documentElement.clientHeight myScroll=document.documentElement.scrollTop }else if(document.body){ myWidth=document.body.clientWidth myHeight=document.body.clientHeight myScroll=document.body.scrollTop} if(window.innerHeight&&window.scrollMaxY){ myScrollWidth=document.body.scrollWidth myScrollHeight=window.innerHeight+window.scrollMaxY }else if(document.body.scrollHeight>document.body.offsetHeight){ myScrollWidth=document.body.scrollWidth myScrollHeight=document.body.scrollHeight }else{ myScrollWidth=document.body.offsetWidth myScrollHeight=document.body.offsetHeight}} function getShift(evt){ var shift=false if(! evt&&window.event){ shift=window.event.shiftKey }else if(evt){ shift=evt.shiftKey if(shift)evt.stopPropagation()} return shift} function findElementPos(elemFind){ var elemX=0 var elemY=0 do{ elemX+=elemFind.offsetLeft elemY+=elemFind.offsetTop }while(elemFind=elemFind.offsetParent) return Array(elemX,elemY)} function insertZoomHTML(){ var inBody=document.getElementsByTagName("body").item(0) var inSpinbox=document.createElement("div") inSpinbox.setAttribute('id','ZoomSpin') inSpinbox.style.position='absolute' inSpinbox.style.left='10px' inSpinbox.style.top='10px' inSpinbox.style.visibility='hidden' inSpinbox.style.zIndex='525' inBody.insertBefore(inSpinbox,inBody.firstChild) var inSpinImage=document.createElement("img") inSpinImage.setAttribute('id','SpinImage') inSpinImage.setAttribute('src',ziURI+'zoom-spin-1.png') inSpinbox.appendChild(inSpinImage) var inZoombox=document.createElement("div") inZoombox.setAttribute('id','ZoomBox') inZoombox.style.position='absolute' inZoombox.style.left='10px' inZoombox.style.top='10px' inZoombox.style.visibility='hidden' inZoombox.style.zIndex='499' inBody.insertBefore(inZoombox,inSpinbox.nextSibling) var inImage1=document.createElement("img") inImage1.onclick=function(event){zoomOut(this,event);return false;} inImage1.setAttribute('src',ziURI+'spacer.gif') inImage1.setAttribute('id','ZoomImage') inImage1.setAttribute('border','0') inImage1.setAttribute('style','-webkit-box-shadow: '+shSet+'0.0)') inImage1.style.display='block' inImage1.style.width='10px' inImage1.style.height='10px' inImage1.style.cursor='pointer' inZoombox.appendChild(inImage1) var inClosebox=document.createElement("div") inClosebox.setAttribute('id','ZoomClose') inClosebox.style.position='absolute' if(browserIsIE){ inClosebox.style.left='-1px' inClosebox.style.top='0px' }else{ inClosebox.style.left='-15px' inClosebox.style.top='-15px'} inClosebox.style.visibility='hidden' inZoombox.appendChild(inClosebox) var inImage2=document.createElement("img") inImage2.onclick=function(event){zoomOut(this,event);return false;} inImage2.setAttribute('src',ziURI+'closebox.png') inImage2.setAttribute('width','30') inImage2.setAttribute('height','30') inImage2.setAttribute('border','0') inImage2.style.cursor='pointer' inClosebox.appendChild(inImage2) if(! document.getElementById('ZoomImage').style.webkitBoxShadow&&! browserIsIE){ var inFixedBox=document.createElement("div") inFixedBox.setAttribute('id','ShadowBox') inFixedBox.style.position='absolute' inFixedBox.style.left='50px' inFixedBox.style.top='50px' inFixedBox.style.width='100px' inFixedBox.style.height='100px' inFixedBox.style.visibility='hidden' inFixedBox.style.zIndex='498' inBody.insertBefore(inFixedBox,inZoombox.nextSibling) var inShadowTable=document.createElement("table") inShadowTable.setAttribute('border','0') inShadowTable.setAttribute('width','100%') inShadowTable.setAttribute('height','100%') inShadowTable.setAttribute('cellpadding','0') inShadowTable.setAttribute('cellspacing','0') inFixedBox.appendChild(inShadowTable) var inShadowTbody=document.createElement("tbody") inShadowTable.appendChild(inShadowTbody) var inRow1=document.createElement("tr") inRow1.style.height='25px' inShadowTbody.appendChild(inRow1) var inCol1=document.createElement("td") inCol1.style.width='27px' inRow1.appendChild(inCol1) var inShadowImg1=document.createElement("img") inShadowImg1.setAttribute('src',ziURI+'zoom-shadow1.png') inShadowImg1.setAttribute('width','27') inShadowImg1.setAttribute('height','25') inShadowImg1.style.display='block' inCol1.appendChild(inShadowImg1) var inCol2=document.createElement("td") inCol2.setAttribute('background',ziURI+'zoom-shadow2.png') inRow1.appendChild(inCol2) var inSpacer1=document.createElement("img") inSpacer1.setAttribute('src',ziURI+'spacer.gif') inSpacer1.setAttribute('height','1') inSpacer1.setAttribute('width','1') inSpacer1.style.display='block' inCol2.appendChild(inSpacer1) var inCol3=document.createElement("td") inCol3.style.width='27px' inRow1.appendChild(inCol3) var inShadowImg3=document.createElement("img") inShadowImg3.setAttribute('src',ziURI+'zoom-shadow3.png') inShadowImg3.setAttribute('width','27') inShadowImg3.setAttribute('height','25') inShadowImg3.style.display='block' inCol3.appendChild(inShadowImg3) inRow2=document.createElement("tr") inShadowTbody.appendChild(inRow2) var inCol4=document.createElement("td") inCol4.setAttribute('background',ziURI+'zoom-shadow4.png') inRow2.appendChild(inCol4) var inSpacer2=document.createElement("img") inSpacer2.setAttribute('src',ziURI+'spacer.gif') inSpacer2.setAttribute('height','1') inSpacer2.setAttribute('width','1') inSpacer2.style.display='block' inCol4.appendChild(inSpacer2) var inCol5=document.createElement("td") inCol5.setAttribute('bgcolor','#ffffff') inRow2.appendChild(inCol5) var inSpacer3=document.createElement("img") inSpacer3.setAttribute('src',ziURI+'spacer.gif') inSpacer3.setAttribute('height','1') inSpacer3.setAttribute('width','1') inSpacer3.style.display='block' inCol5.appendChild(inSpacer3) var inCol6=document.createElement("td") inCol6.setAttribute('background',ziURI+'zoom-shadow5.png') inRow2.appendChild(inCol6) var inSpacer4=document.createElement("img") inSpacer4.setAttribute('src',ziURI+'spacer.gif') inSpacer4.setAttribute('height','1') inSpacer4.setAttribute('width','1') inSpacer4.style.display='block' inCol6.appendChild(inSpacer4) var inRow3=document.createElement("tr") inRow3.style.height='26px' inShadowTbody.appendChild(inRow3) var inCol7=document.createElement("td") inCol7.style.width='27px' inRow3.appendChild(inCol7) var inShadowImg7=document.createElement("img") inShadowImg7.setAttribute('src',ziURI+'zoom-shadow6.png') inShadowImg7.setAttribute('width','27') inShadowImg7.setAttribute('height','26') inShadowImg7.style.display='block' inCol7.appendChild(inShadowImg7) var inCol8=document.createElement("td") inCol8.setAttribute('background',ziURI+'zoom-shadow7.png') inRow3.appendChild(inCol8) var inSpacer5=document.createElement("img") inSpacer5.setAttribute('src',ziURI+'spacer.gif') inSpacer5.setAttribute('height','1') inSpacer5.setAttribute('width','1') inSpacer5.style.display='block' inCol8.appendChild(inSpacer5) var inCol9=document.createElement("td") inCol9.style.width='27px' inRow3.appendChild(inCol9) var inShadowImg9=document.createElement("img") inShadowImg9.setAttribute('src',ziURI+'zoom-shadow8.png') inShadowImg9.setAttribute('width','27') inShadowImg9.setAttribute('height','26') inShadowImg9.style.display='block' inCol9.appendChild(inShadowImg9)} if(inCap){ var inCapDiv=document.createElement("div") inCapDiv.setAttribute('id','ZoomCapDiv') inCapDiv.style.position='absolute' inCapDiv.style.visibility='hidden' inCapDiv.style.marginLeft='auto' inCapDiv.style.marginRight='auto' inCapDiv.style.zIndex='501' inBody.insertBefore(inCapDiv,inZoombox.nextSibling) var inCapTable=document.createElement("table") inCapTable.setAttribute('border','0') inCapTable.setAttribute('cellPadding','0') inCapTable.setAttribute('cellSpacing','0') inCapDiv.appendChild(inCapTable) var inTbody=document.createElement("tbody") inCapTable.appendChild(inTbody) var inCapRow1=document.createElement("tr") inTbody.appendChild(inCapRow1) var inCapCol1=document.createElement("td") inCapCol1.setAttribute('align','right') inCapRow1.appendChild(inCapCol1) var inCapImg1=document.createElement("img") inCapImg1.setAttribute('src',ziURI+'zoom-caption-l.png') inCapImg1.setAttribute('width','13') inCapImg1.setAttribute('height','26') inCapImg1.style.display='block' inCapCol1.appendChild(inCapImg1) var inCapCol2=document.createElement("td") inCapCol2.setAttribute('background',ziURI+'zoom-caption-fill.png') inCapCol2.setAttribute('id','ZoomCaption') inCapCol2.setAttribute('valign','middle') inCapCol2.style.fontSize='14px' inCapCol2.style.fontFamily='Helvetica' inCapCol2.style.fontWeight='bold' inCapCol2.style.color='#ffffff' inCapCol2.style.textShadow='0px 2px 4px #000000' inCapCol2.style.whiteSpace='nowrap' inCapRow1.appendChild(inCapCol2) var inCapCol3=document.createElement("td") inCapRow1.appendChild(inCapCol3) var inCapImg2=document.createElement("img") inCapImg2.setAttribute('src',ziURI+'zoom-caption-r.png') inCapImg2.setAttribute('width','13') inCapImg2.setAttribute('height','26') inCapImg2.style.display='block' inCapCol3.appendChild(inCapImg2)}}