var includeCaption=true;var zoomTime=5;var zoomSteps=15;var includeFade=1;var minBorder=90;var shadowSettings='0px 5px 25px rgba(0, 0, 0, ';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 setupZoom(){prepZooms();insertZoomHTML();zoomdiv=document.getElementById(zoomID);zoomimg=document.getElementById(theID);}
function prepZooms(){if(!document.getElementsByTagName){return;}
var links=document.getElementsByTagName("a");for(i=0;i<links.length;i++){if(links[i].getAttribute("href")){if(links[i].getAttribute("href").search(/(.*)\.(jpg|jpeg|gif|png|bmp|tif|tiff)/gi)!=-1){if(links[i].getAttribute("rel")!="nozoom"){links[i].onclick=function(event){return zoomClick(this,event);};links[i].onmouseover=function(){zoomPreload(this);};}}}}}
function zoomPreload(from){var theimage=from.getAttribute("href");if(imgPreload.src.indexOf(from.getAttribute("href").substr(from.getAttribute("href").lastIndexOf("/")))==-1){preloadActive=true;imgPreload=new Image();imgPreload.onload=function(){preloadActive=false;}
imgPreload.src=theimage;}}
function preloadAnimStart(){preloadTime=new Date();document.getElementById("ZoomSpin").style.left=(myWidth/2)+'px';document.getElementById("ZoomSpin").style.top=((myHeight/2)+myScroll)+'px';document.getElementById("ZoomSpin").style.visibility="visible";preloadFrame=1;document.getElementById("SpinImage").src=zoomImagesURI+'zoom-spin-'+preloadFrame+'.png';preloadAnimTimer=setInterval("preloadAnim()",100);}
function preloadAnim(from){if(preloadActive!=false){document.getElementById("SpinImage").src=zoomImagesURI+'zoom-spin-'+preloadFrame+'.png';preloadFrame++;if(preloadFrame>12)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=shadowSettings+'0.0)';}
document.getElementById("ZoomClose").style.visibility="hidden";if(includeCaption){document.getElementById(zoomCaptionDiv).style.visibility="hidden";if(from.getAttribute('title')&&includeCaption){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(includeFade==1){setOpacity(0,zoomID);}
zoomdiv.style.visibility="visible";sizeRatio=endW/endH;if(endW>myWidth-minBorder){endW=myWidth-minBorder;endH=endW/sizeRatio;}
if(endH>myHeight-minBorder){endH=myHeight-minBorder;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=zoomSteps*7;}else{tempSteps=zoomSteps;}
zoomCurrent=0;if(includeFade==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+", "+includeFade+", "+fadeAmount+", 'zoomDoneIn(zoomID)')",zoomTime);zoomActive[theID]=true;}}
function zoomOut(from,evt){if(getShift(evt)){tempSteps=zoomSteps*7;}else{tempSteps=zoomSteps;}
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=shadowSettings+'0.0)';}
document.getElementById("ZoomClose").style.visibility="hidden";if(includeCaption&&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(includeFade==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+", "+includeFade+", "+fadeAmount+", 'zoomDone(zoomID, theID)')",zoomTime);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(includeCaption&&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,zoomSteps,includeFade,fadeAmount,execWhenDone){if(zoomCurrent==(zoomSteps+1)){zoomActive[theID]=false;clearInterval(zoomTimer[theID]);if(execWhenDone!=""){eval(execWhenDone);}}else{if(includeFade==1){if(fadeAmount<0){setOpacity(Math.abs(zoomCurrent*fadeAmount),zoomdiv);}else{setOpacity(100-(zoomCurrent*fadeAmount),zoomdiv);}}
moveW=cubicInOut(zoomCurrent,zoomStartW,zoomChangeW,zoomSteps);moveH=cubicInOut(zoomCurrent,zoomStartH,zoomChangeH,zoomSteps);moveX=cubicInOut(zoomCurrent,zoomStartX,zoomChangeX,zoomSteps);moveY=cubicInOut(zoomCurrent,zoomStartY,zoomChangeY,zoomSteps);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+", "+zoomSteps+", "+includeFade+", "+fadeAmount+", '"+execWhenDone+"')",zoomTime);}}
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=shadowSettings+(Math.abs(fadeCurrent*fadeAmount))+')';}else{document.getElementById(theID).style.webkitBoxShadow=shadowSettings+(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',zoomImagesURI+'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',zoomImagesURI+'spacer.gif');inImage1.setAttribute('id','ZoomImage');inImage1.setAttribute('border','0');inImage1.setAttribute('style','-webkit-box-shadow: '+shadowSettings+'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',zoomImagesURI+'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',zoomImagesURI+'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',zoomImagesURI+'zoom-shadow2.png');inRow1.appendChild(inCol2);var inSpacer1=document.createElement("img");inSpacer1.setAttribute('src',zoomImagesURI+'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',zoomImagesURI+'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',zoomImagesURI+'zoom-shadow4.png');inRow2.appendChild(inCol4);var inSpacer2=document.createElement("img");inSpacer2.setAttribute('src',zoomImagesURI+'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',zoomImagesURI+'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',zoomImagesURI+'zoom-shadow5.png');inRow2.appendChild(inCol6);var inSpacer4=document.createElement("img");inSpacer4.setAttribute('src',zoomImagesURI+'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',zoomImagesURI+'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',zoomImagesURI+'zoom-shadow7.png');inRow3.appendChild(inCol8);var inSpacer5=document.createElement("img");inSpacer5.setAttribute('src',zoomImagesURI+'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',zoomImagesURI+'zoom-shadow8.png');inShadowImg9.setAttribute('width','27');inShadowImg9.setAttribute('height','26');inShadowImg9.style.display='block';inCol9.appendChild(inShadowImg9);}
if(includeCaption){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',zoomImagesURI+'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',zoomImagesURI+'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',zoomImagesURI+'zoom-caption-r.png');inCapImg2.setAttribute('width','13');inCapImg2.setAttribute('height','26');inCapImg2.style.display='block';inCapCol3.appendChild(inCapImg2);}};Prototype.Browser.IE6=Prototype.Browser.IE&&parseInt(navigator.userAgent.substring(navigator.userAgent.indexOf("MSIE")+5))==6;Prototype.Browser.IE7=Prototype.Browser.IE&&parseInt(navigator.userAgent.substring(navigator.userAgent.indexOf("MSIE")+5))==7;Prototype.Browser.IE8=Prototype.Browser.IE&&!Prototype.Browser.IE6&&!Prototype.Browser.IE7;window.ACPTop=200;function aw_acp_getproduct(url,attrName){if(typeof(attrName)=='undefined')attrName='product';var res=url.match("/"+attrName+"/[0-9]*/");if(res&&typeof res[0]!='undefined'){res=res[0].substr(attrName.length+2,res[0].lastIndexOf('/')-(attrName.length+2));if(!isNaN(res))return res;}
return-1;}
function aw_acp_in_array(needle,haystack){if(typeof needle=='undefined'||typeof haystack=='undefined')
return false;for(var i=0;i<haystack.length;i++){if(haystack[i]==needle)return true;}
return false;}
if(!Prototype.Browser.IE6){oldSetLocation=setLocation;setLocation=function(url){if(window.location.href.match('https://')&&!url.match('https://')){url=url.replace('http://','https://')}
if(aw_acp_in_array(aw_acp_getproduct(url),AW_ACP.disabledForProducts)||url.search('noacp=1')!=-1){return oldSetLocation(url);}
if(AW_ACP.isCartPage&&((url.search('/add')!=-1)||(url.search('/remove')!=-1))){ajaxcartsend(url+'awacp/1/is_checkout/1','url','','');}else if(url.search('checkout/cart/add')!=-1){ajaxcartsend(url+'awacp/1','url','','');}else if(url.search('wishlist/index/cart')!=-1){var urlParts=url.split('?');var newUrl='';if(aw_acp_in_array(aw_acp_getproduct(url,'item'),AW_ACP.disabledForWLItems)){newUrl=urlParts[0]+'awacpskip/1';if(urlParts[1])newUrl+='?'+urlParts[1];oldSetLocation(newUrl);return;}
newUrl=urlParts[0]+'awwishl/1/awacp/1';if(urlParts[1])newUrl+='?'+urlParts[1];ajaxcartsendwishlist(newUrl,'url','','');}else if(url.search('options=cart')!=-1){ajaxcartsendconfigurable(url);}
else
{window.location.href=url;}}}
function addSubmitEvent()
{try
{if(typeof productAddToCartFormFromPopup!='undefined'&&!AW_ACP.disabled&&!awacpclass.isCartConfigurePage())
{productAddToCartFormFromPopup.submit=function(url){if(this.validator&&this.validator.validate()){ajaxcartsend('?awacp=1','form',this,'');}
return false;}
productAddToCartFormFromPopup.form.onsubmit=function(){productAddToCartFormFromPopup.submit();return false;};}
if(typeof productAddToCartForm!='undefined'&&!AW_ACP.disabled&&!awacpclass.isCartConfigurePage())
{productAddToCartForm.submit=function(url){if(this.validator&&this.validator.validate()){ajaxcartsend('?awacp=1','form',this,'');}
return false;}
productAddToCartForm.form.onsubmit=function(){productAddToCartForm.submit();return false;};}}
catch(e){}}
function addAcpSubmitEvent(removeFromWishlistUrl)
{if(typeof(removeFromWishlistUrl)=='undefined')removeFromWishlistUrl=false;if(typeof productAddToCartFormAcp!='undefined')
{productAddToCartFormAcp.submit=function(url){if(this.validator&&this.validator.validate()){if(AW_ACP.isCartPage){ajaxcartsend('?awacp=1&is_checkout=1','form',this,'');}else{if(removeFromWishlistUrl){removeFromWishlistUrl.replace(/^http[s]{0,1}/,window.location.href.replace(/:[^:].*$/i,''));}
ajaxcartsend('?awacp=1','form',this,removeFromWishlistUrl);}}
return false;}
productAddToCartFormAcp.form.onsubmit=function(){productAddToCartFormAcp.submit();return false;};}}
if(!Prototype.Browser.IE6){var cnt1=20;__intId=setInterval(function(){cnt1--;if(typeof productAddToCartForm!='undefined'){try{$$('#product_addtocart_form '+aw_addToCartButtonClass).each(function(el){el.setAttribute('type','button')})}catch(err){}
if(AW_ACP.hasFileOption==false)addSubmitEvent();clearInterval(__intId);}
if(!cnt1)clearInterval(__intId);},500);var cnt2=20;__intId2=setInterval(function(){cnt2--;if(typeof aw_cartDivClass!='undefined'&&$$(aw_cartDivClass).length||((typeof AW_ACP!=='undefined')&&AW_ACP.isCartPage)){updateDeleteLinks();clearInterval(__intId2);}
if(!cnt2)clearInterval(__intId);},500);}
function setPLocation(url,setFocus){if(url.search('checkout/cart/add')!=-1){window.opener.focus();if(url[url.length-1]=='/')delim='';else delim='/';if(window.opener.location.pathname.search('checkout/cart')==-1){window.opener.ajaxcartsend(url+delim+'awacp/1','url','');}else{window.opener.ajaxcartsend(url+delim+'awacp/1/is_checkout/1','url','');}}else if(url.search('options=cart')!=-1){window.opener.ajaxcartsendconfigurable(url);}else{if(setFocus){window.opener.focus();}
window.opener.location.href=url;}}
function ajaxcartsendwishlist(url,type,obj){url=getCommonUrl(url);if(window.location.href.match('http://')&&AW_ACP.secureUrlOnFrontend&&AW_ACP.wishlistVersionMatch)
{url=url.replace("https://",'http://');url=url.replace('wishlist/index/cart','ajaxcartpro/wishlist/cart');}
showProgressAnimation();new Ajax.Request(url,{onSuccess:function(resp){try{if(typeof(resp.responseText)=='string')eval('resp = '+resp.responseText);}catch(e){win.location.href=url;hideProgressAnimation();return;}
hideProgressAnimation();if(resp.r!='success'){if(resp.redirect){if(resp.redirect.search('options=cart')!=-1||(typeof(resp.is_configurable)!='undefined'&&resp.is_configurable)){ajaxcartsendconfigurable(resp.redirect.indexOf('?options=cart')?resp.redirect:resp.redirect+'?options=cart',typeof(resp.conf_remove_url)=='undefined'?null:resp.conf_remove_url);}else{win.location.href=resp.redirect;}}else{win.location.href=url;}}else{if(AW_ACP.useConfirmation){showConfirmDialog(resp.product_name);}
__onACPRender();updateCartView(resp);updateTopLinks(resp);updateWishlist(resp);updateWishlistTopLinks(resp);updateAddLinks();}}});}
function ajaxcartsend(url,type,obj,removeFromWishlist){if(typeof(removeFromWishlist)=='undefined'||removeFromWishlist=='')removeFromWishlist=false;url=getCommonUrl(url)
showProgressAnimation();if(type=='form'){try{var aForm=$('product_addtocart_form_acp')?$('product_addtocart_form_acp'):$('product_addtocart_form');}catch(e){}
if(aForm==null)
{var aForm=$('product_addtocart_form_acp')?$('product_addtocart_form_acp'):$('product_addtocart_form_from_popup');aForm.action=AW_ACP.cartURL+'add/';}
nativeFormAction=aForm.action;aForm.action+=url;if(removeFromWishlist){new Ajax.Request(removeFromWishlist,{onComplete:function(){ajaxcartsend(url,type,obj);}});return;}
aForm.request({onComplete:function(resp){if(typeof(resp.responseText)=='string'){try{eval('resp = '+resp.responseText);}catch(e){if(obj.form.submit()){return;}else{if(!AW_ACP.isProductPage)
win.location.href=nativeFormAction;return;}}}
hideProgressAnimation();if(resp.r!='success'){if(resp.redirect){if(resp.redirect.search('options=cart')!=-1||(typeof(resp.is_configurable)!='undefined'&&resp.is_configurable)){ajaxcartsendconfigurable(resp.redirect.indexOf('?options=cart')?resp.redirect:resp.redirect+'?options=cart');}else{obj.form.submit();}}else{obj.form.submit();}}else{if($('acp_configurable_block'))
$('acp_configurable_block').remove();__onACPRender();if(AW_ACP.useConfirmation&&(url.search('is_checkout/1')!=1)){showConfirmDialog(resp.product_name);}
updateCartView(resp);updateWishlist(resp);updateWishlistTopLinks(resp);}}})}
if(type=='url'){new Ajax.Request(url,{onSuccess:function(resp){try{if(typeof(resp.responseText)=='string')eval('resp = '+resp.responseText);}catch(e){win.location.href=url;hideProgressAnimation();return;}
hideProgressAnimation();if(resp.r!='success'){if(resp.redirect){if(resp.redirect.search('options=cart')!=-1||(typeof(resp.is_configurable)!='undefined'&&resp.is_configurable)){ajaxcartsendconfigurable(resp.redirect.indexOf('?options=cart')?resp.redirect:resp.redirect+'?options=cart');}else{win.location.href=resp.redirect;}}else{win.location.href=url;}}else{if(AW_ACP.useConfirmation&&(url.search('is_checkout/1')==-1)){showConfirmDialog(resp.product_name);}
__onACPRender();updateCartView(resp);}}});}}
function __onACPRender(){if(AW_ACP.onRender&&AW_ACP.onRender.length){$A(AW_ACP.onRender).each(function(h){h(AW_ACP)})}}
function addEffectACP(obj,effect)
{if(effect=='opacity'){$(obj).hide();new Effect.Appear(obj);}
if(effect=='grow'){$(obj).hide();new Effect.BlindDown(obj);}
if(effect=='blink'){new Effect.Pulsate(obj);}}
function updateDeleteLinks(){var tmpLinks=document.links;for(i=0;i<tmpLinks.length;i++){if(tmpLinks[i].href.search('checkout/cart/delete')!=-1){url=tmpLinks[i].href.replace(/\/uenc\/.+,/g,"");var del=url.match(/delete\/id\/\d+\//g);var id=del[0].match(/\d+/g);if(window.location.protocol=='https:'){aw_base_url=aw_base_url.replace("http:","https:");}
if(!AW_ACP.isCartPage){tmpLinks[i].href='javascript:ajaxcartprodelete("'+aw_base_url+'ajaxcartpro/cart/remove/id/'+id+'")';}else{tmpLinks[i].href='javascript:ajaxcartprodelete("'+aw_base_url+'ajaxcartpro/cart/remove/id/'+id+'/is_checkout/1")';}}}}
function updateTopLinks(resp){if(!awacpclass.isEE()&&$$(aw_topLinkCartClass).length){$$(aw_topLinkCartClass)[0].title=$$(aw_topLinkCartClass)[0].innerHTML=resp.links;}}
function updateWishlistTopLinks(resp){if($$(aw_topWishlistLinkCartClass).length&&typeof(resp.wishlist_links)!='undefined'){$$(aw_topWishlistLinkCartClass)[0].innerHTML=resp.wishlist_links;$$(aw_topWishlistLinkCartClass).first().title=resp.wishlist_links;}}
window.updateBigCartView=function(resp){updateCartBar(resp);$$(aw_bigCartClass)[0].innerHTML=resp.cart
if($('shopping-cart-table')){decorateTable('shopping-cart-table')}
updateDeleteLinks();updateTopLinks(resp);updateAddLinks();awACPExtractScripts(resp.cart);}
function showProgressAnimation(){if($$('.ajaxcartpro_confirm').first())
$$('.ajaxcartpro_confirm').first().hide();alignBlock($$('.ajaxcartpro_progress')[0],260,50,'progress');}
function showConfirmDialog(product_name){if(product_name)$('acp_product_name').innerHTML=product_name;block=$$('.ajaxcartpro_confirm')[0];alignBlock(block,260,104,'confirmation');block.style.display='block';if(typeof($$('.ajaxcartpro_confirm .focus')[0])!='undefined')$$('.ajaxcartpro_confirm .focus')[0].focus();var ACPcountdown=$('ACPcountdown');if(typeof ACPcountdown!='undefined'&&AW_ACP.counterBegin>0)
{ACPcountdown.innerHTML=AW_ACP.counterBegin;if(typeof __intId3!='undefined')clearInterval(__intId3);__intId3=setInterval(function(){if(parseInt(ACPcountdown.innerHTML)){ACPcountdown.innerHTML=parseInt(ACPcountdown.innerHTML)-1;}
else
{clearInterval(__intId3);block.style.display="none";ACPcountdown.innerHTML=AW_ACP.counterBegin;}},1000);}}
function hideProgressAnimation(){$$('.ajaxcartpro_progress')[0].style.display='none';}
if(!Prototype.Browser.IE6){document.observe("dom:loaded",function(){updateAddLinks()
if($('aw_acp_continue')){$('aw_acp_continue').onclick=function(e){e=e||event;if(e.preventDefault)
e.preventDefault()
$$('.ajaxcartpro_confirm')[0].style.display='none';return false;}}
if($('aw_acp_checkout')){$('aw_acp_checkout').onclick=function(e){$$('.ajaxcartpro_confirm')[0].style.display='none';return true;}}
if((typeof aw_cartDivClass!='undefined')&&($$(aw_cartDivClass).length||((typeof AW_ACP!=='undefined')&&AW_ACP.isCartPage))){updateDeleteLinks();}})}
function updateAddLinks(){var ats=document.links;for(i=ats.length-1;i>=0;i--){if(ats[i].href.search('checkout/cart/add')!=-1){ats[i].onclick=function(link){return function(){setLocation(link)}}(ats[i].href);ats[i].href="javascript:void(0)";continue;}
if(ats[i].href.search('wishlist/index/cart')!=-1){ats[i].onclick=function(link){return function(){setLocation(link)}}(ats[i].href);ats[i].href="javascript:void(0)";continue;}
if(ats[i].href.search('paypaluk/express/start')!=-1||ats[i].href.search('paypal/express/start')!=-1){$$('#product_addtocart_form a').each(function(el){if(el==ats[i]){ats[i].stopObserving('click');ats[i].observe('click',function(event){$('pp_checkout_url').value=this.href;productAddToCartForm.form.submit();event.stop();});}});}}}
function getCommonUrl(url){if(window.location.href.match('www.')&&url.match('http://')&&!url.match('www.')){url=url.replace('http://','http://www.');}else if(!window.location.href.match('www.')&&url.match('http://')&&url.match('www.')){url=url.replace('www.','');}
return url;}
var productAddToCartFormAcp;function ajaxcartsendconfigurable(url,removeFromWishlistUrl){if(typeof(removeFromWishlistUrl)=='undefined')removeFromWishlistUrl=false;showProgressAnimation();urlToSend=url+'&ajaxcartpro=1';new Ajax.Request(urlToSend,{onSuccess:function(resp){if(resp.responseText=='false'){window.location=url;}else{var _div=new Element('div');var scripts=resp.responseText.extractScripts();_div.innerHTML=resp.responseText.stripScripts();$$('body').first().insert({bottom:_div});_div.hide();hideProgressAnimation();productAddToCartFormAcp=new VarienForm('product_addtocart_form_acp');decorateGeneric($$('#product-options-wrapper dl'),['last']);addAcpSubmitEvent(removeFromWishlistUrl);Event.observe($$('#aw_acp_continue').last(),'click',function(){if(typeof(optionsPrice)!='undefined'){if(typeof(optionsPrice.productType)!='undefined'){switch(optionsPrice.productType){case'simple':$('acp_configurable_block').remove();opConfig.reloadPrice()
break;case'downloadable':$('acp_configurable_block').remove();dConfigAcp.reloadPrice();break;default:optionsPrice.changePrice('configAcp',0);optionsPrice.reload();$('acp_configurable_block').remove();}}else{optionsPrice.changePrice('configAcp',0);optionsPrice.reload();$('acp_configurable_block').remove();}}
awacpclass.hideMagentoMAPPopup();return false;});for(var i=0;i<scripts.length;i++)
{if(typeof(scripts[i])!='undefined')
{eval(scripts[i]);}}
if(typeof(optionsPrice)!='undefined'&&aw_acp_in_array(optionsPrice.productId,AW_ACP.disabledForProducts))
window.location=url;else{_div.show();showOptionsDialog();}}}});}
function showOptionsDialog()
{if($$('.ajaxcartpro_confirm').first())
$$('.ajaxcartpro_confirm').first().hide();alignBlock($('acp_product_options'),400,$('acp_product_options').offsetHeight,'custom_options');}
function alignBlock(block,width,height,blockType){if(blockType=='confirmation'&&!AW_ACP.useConfirmation)
return false;if(blockType=='progress'&&!AW_ACP.useProgress)
return false;block.style.display='block';block.style.width=width+'px';block.style.height=height+'px';block.style.left=document.viewport.getWidth()/2-width/2+'px';if(Prototype.Browser.IE&&!Prototype.Browser.IE8){block.style.position='absolute';window.ACPTop=200;}
if(aw_ajaxcartpro_proganim=='center'){if(!(Prototype.Browser.IE&&!Prototype.Browser.IE8)){block.style.top=(document.viewport.getHeight()/2-height/2)+'px';}else{window.ACPTop=200;}}
if(aw_ajaxcartpro_proganim=='top'){if(!(Prototype.Browser.IE&&!Prototype.Browser.IE8)){block.style.top='0px';}else{window.ACPTop=0;}}
if(aw_ajaxcartpro_proganim=='bottom'){block.style.bottom='0px';}}
function validateDownloadableCallback(elmId,result)
{var container=$('downloadable-links-list');if(result=='failed'){container.removeClassName('validation-passed');container.addClassName('validation-failed');}else{container.removeClassName('validation-failed');container.addClassName('validation-passed');}}
function validateOptionsCallback(elmId,result)
{var container=$(elmId).up('ul.options-list');if(result=='failed'){container.removeClassName('validation-passed');container.addClassName('validation-failed');}else{container.removeClassName('validation-failed');container.addClassName('validation-passed');}}
function acpSubmit()
{if(productAddToCartFormAcp.validator&&productAddToCartFormAcp.validator.validate())
{awacpclass.hideMagentoMAPPopup();productAddToCartFormAcp.submit();}}
function updateCustomBlock(selector,content){var block=$$(selector).first();if(block){block.replace(content);return true;}
return false;}
function updateCustomBlocks(custom){for(var key in custom){if(typeof custom[key].selector!='undefined'&&typeof custom[key].content!='undefined')
updateCustomBlock(custom[key].selector,custom[key].content);}}
function awACPExtractScripts(strings){var scripts=strings.extractScripts();scripts.each(function(script){try{eval(script.replace(/var /gi,""));}
catch(e){if(window.console)console.log(e.name);}});}
AWACPClass=Class.create({initialize:function(className){this._isEE=false;this.global=window;this.global[className]=this;},setIsEE:function(value){this._isEE=typeof(value)!='undefined'&&value?true:false;},isEE:function(value){return this._isEE;},isCartConfigurePage:function(){return AW_ACP._isCartConfigurePage?true:false;},hideMagentoMAPPopup:function(){if($('map-popup-close')&&$('map-popup')&&$('map-popup').visible()){$('map-popup-close').click();}}});new AWACPClass('awacpclass');;;window.intPrevious=setInterval(function(){if(typeof AW_ACP!='undefined'&&document.body){if(typeof aw_cartDivClass=='undefined'){aw_cartDivClass=AW_ACP.theme=='blank'?'.block-cart':'.mini-cart';if(!$$(aw_cartDivClass).length||!$$(aw_cartDivClass)[0].tagName){aw_cartDivClass='.block-cart'}}
if(typeof aw_topLinkCartClass=='undefined'){aw_topLinkCartClass='.top-link-cart';}
if(typeof aw_addToCartButtonClass=='undefined'){aw_addToCartButtonClass='.form-button';}
if(typeof aw_bigCartClass=='undefined'){if(typeof($$('.layout-1column')[0])!='undefined')
aw_bigCartClass='.layout-1column';else if(typeof($$('.col-main')[0])!='undefined')
aw_bigCartClass='.col-main';else
aw_bigCartClass='.cart';}
if(typeof aw_wishlistClass=='undefined'){if(typeof($$('.my-wishlist')[0])!='undefined')
aw_wishlistClass='.my-wishlist';else
aw_wishlistClass='.padder';}
if(typeof(aw_wishlistSidebarClass)=='undefined'){aw_wishlistSidebarClass='.block-wishlist';}
if(typeof aw_topWishlistLinkCartClass=='undefined'){if($$('.top-link-wishlist a').length)aw_topWishlistLinkCartClass='.top-link-wishlist a';else aw_topWishlistLinkCartClass='.top-link-wishlist';}
if(window.location.toString().search('/product_compare/')!=-1){win=window.opener;}else{win=window;}
clearInterval(intPrevious)}},500);function ajaxcartprodelete(url){showProgressAnimation();url=getCommonUrl(url)
if(typeof aw_acp_retries=='undefined')aw_acp_retries=0;new Ajax.Request(url,{onSuccess:function(resp){try{if(typeof(resp.responseText)=='string')eval('resp = '+resp.responseText);}catch(e){return;}
if(resp&&resp.error&&resp.error=='quote error'&&aw_acp_retries==0){aw_acp_retries=1;return ajaxcartprodelete(url);}
aw_acp_retries=0;hideProgressAnimation();__onACPRender()
updateCartView(resp,'');}});}
function updateCartBar(resp){var __cartObj=$$(aw_cartDivClass)[0];if(__cartObj)
{if(typeof(__cartObj.length)=='number')__cartObj=__cartObj[0];var oldHeight=__cartObj.offsetHeight;var tmpDiv=win.document.createElement('div');tmpDiv.innerHTML=resp.cartbar;$(tmpDiv).cleanWhitespace();var tmpParent=__cartObj.parentNode;tmpParent.replaceChild($(tmpDiv).select(aw_cartDivClass)[0],__cartObj);var __cartObj=$$(aw_cartDivClass)[0];var newHeight=__cartObj.offsetHeight;addEffectACP(__cartObj,aw_ajaxcartpro_cartanim);truncateOptions();}
updateDeleteLinks();updateTopLinks(resp);if(typeof(resp.custom)!='undefined')updateCustomBlocks(resp.custom);}
function updateCartView(resp){if(AW_ACP.isCartPage)return updateBigCartView(resp);var __cartObj=$$(aw_cartDivClass)[0];if(__cartObj)
{if(typeof(__cartObj.length)=='number')__cartObj=__cartObj[0];var oldHeight=__cartObj.offsetHeight;var tmpDiv=win.document.createElement('div');tmpDiv.innerHTML=resp.cart;$(tmpDiv).cleanWhitespace();var tmpParent=__cartObj.parentNode;tmpParent.replaceChild($(tmpDiv).select(aw_cartDivClass)[0],__cartObj);var __cartObj=$$(aw_cartDivClass)[0];var newHeight=__cartObj.offsetHeight;addEffectACP(__cartObj,aw_ajaxcartpro_cartanim);truncateOptions();}
updateDeleteLinks();updateTopLinks(resp);if(typeof(resp.custom)!='undefined')updateCustomBlocks(resp.custom);}
function updateWishlist(resp){if(typeof(resp.wishlist)=='undefined')return;var wishlistObj=$$(aw_wishlistClass)[0];if(wishlistObj){var tmpDiv=win.document.createElement('div');tmpDiv.innerHTML=resp.wishlist;var tmpParent=wishlistObj.parentNode;tmpParent.replaceChild(tmpDiv.firstChild,wishlistObj);}
var wishlistSidebar=$$(aw_wishlistSidebarClass).first();if(wishlistSidebar){wishlistSidebar.replace(resp.wishlist_sidebar);updateAddLinks();}};;if(typeof Product=='undefined'){var Product={};}
Product.Zoom=Class.create();Product.Zoom.prototype={initialize:function(imageEl,trackEl,handleEl,zoomInEl,zoomOutEl,hintEl){this.containerEl=$(imageEl).parentNode;this.imageEl=$(imageEl);this.handleEl=$(handleEl);this.trackEl=$(trackEl);this.hintEl=$(hintEl);this.containerDim=Element.getDimensions(this.containerEl);this.imageDim=Element.getDimensions(this.imageEl);this.imageDim.ratio=this.imageDim.width/this.imageDim.height;this.floorZoom=1;if(this.imageDim.width>this.imageDim.height){this.ceilingZoom=this.imageDim.width/this.containerDim.width;}else{this.ceilingZoom=this.imageDim.height/this.containerDim.height;}
if(this.imageDim.width<=this.containerDim.width&&this.imageDim.height<=this.containerDim.height){this.trackEl.up().hide();this.hintEl.hide();this.containerEl.removeClassName('product-image-zoom');return;}
this.imageX=0;this.imageY=0;this.imageZoom=1;this.sliderSpeed=0;this.sliderAccel=0;this.zoomBtnPressed=false;this.showFull=false;this.selects=document.getElementsByTagName('select');this.draggable=new Draggable(imageEl,{starteffect:false,reverteffect:false,endeffect:false,snap:this.contain.bind(this)});this.slider=new Control.Slider(handleEl,trackEl,{axis:'horizontal',minimum:0,maximum:Element.getDimensions(this.trackEl).width,alignX:0,increment:1,sliderValue:0,onSlide:this.scale.bind(this),onChange:this.scale.bind(this)});this.scale(0);Event.observe(this.imageEl,'dblclick',this.toggleFull.bind(this));Event.observe($(zoomInEl),'mousedown',this.startZoomIn.bind(this));Event.observe($(zoomInEl),'mouseup',this.stopZooming.bind(this));Event.observe($(zoomInEl),'mouseout',this.stopZooming.bind(this));Event.observe($(zoomOutEl),'mousedown',this.startZoomOut.bind(this));Event.observe($(zoomOutEl),'mouseup',this.stopZooming.bind(this));Event.observe($(zoomOutEl),'mouseout',this.stopZooming.bind(this));},toggleFull:function(){this.showFull=!this.showFull;if(typeof document.body.style.maxHeight=="undefined"){for(i=0;i<this.selects.length;i++){this.selects[i].style.visibility=this.showFull?'hidden':'visible';}}
val_scale=!this.showFull?this.slider.value:1;this.scale(val_scale);this.trackEl.style.visibility=this.showFull?'hidden':'visible';this.containerEl.style.overflow=this.showFull?'visible':'hidden';this.containerEl.style.zIndex=this.showFull?'1000':'9';return this;},scale:function(v){var centerX=(this.containerDim.width*(1-this.imageZoom)/2-this.imageX)/this.imageZoom;var centerY=(this.containerDim.height*(1-this.imageZoom)/2-this.imageY)/this.imageZoom;var overSize=(this.imageDim.width>this.containerDim.width&&this.imageDim.height>this.containerDim.height);this.imageZoom=this.floorZoom+(v*(this.ceilingZoom-this.floorZoom));if(overSize){if(this.imageDim.width>this.containerDim.width){this.imageEl.style.width=(this.imageZoom*this.containerDim.width)+'px';}
if(this.containerDim.ratio){this.imageEl.style.height=(this.imageZoom*this.containerDim.width*this.containerDim.ratio)+'px';}}else{this.slider.setDisabled();}
this.imageX=this.containerDim.width*(1-this.imageZoom)/2-centerX*this.imageZoom;this.imageY=this.containerDim.height*(1-this.imageZoom)/2-centerY*this.imageZoom;this.contain(this.imageX,this.imageY,this.draggable);return true;},startZoomIn:function()
{if(!this.slider.disabled){this.zoomBtnPressed=true;this.sliderAccel=.002;this.periodicalZoom();this.zoomer=new PeriodicalExecuter(this.periodicalZoom.bind(this),.05);}
return this;},startZoomOut:function()
{if(!this.slider.disabled){this.zoomBtnPressed=true;this.sliderAccel=-.002;this.periodicalZoom();this.zoomer=new PeriodicalExecuter(this.periodicalZoom.bind(this),.05);}
return this;},stopZooming:function()
{if(!this.zoomer||this.sliderSpeed==0){return;}
this.zoomBtnPressed=false;this.sliderAccel=0;},periodicalZoom:function()
{if(!this.zoomer){return this;}
if(this.zoomBtnPressed){this.sliderSpeed+=this.sliderAccel;}else{this.sliderSpeed/=1.5;if(Math.abs(this.sliderSpeed)<.001){this.sliderSpeed=0;this.zoomer.stop();this.zoomer=null;}}
this.slider.value+=this.sliderSpeed;this.slider.setValue(this.slider.value);this.scale(this.slider.value);return this;},contain:function(x,y,draggable){var dim=Element.getDimensions(draggable.element);var xMin=0,xMax=this.containerDim.width-dim.width;var yMin=0,yMax=this.containerDim.height-dim.height;x=x>xMin?xMin:x;x=x<xMax?xMax:x;y=y>yMin?yMin:y;y=y<yMax?yMax:y;if(this.containerDim.width>dim.width){x=(this.containerDim.width/2)-(dim.width/2);}
if(this.containerDim.height>dim.height){y=(this.containerDim.height/2)-(dim.height/2);}
this.imageX=x;this.imageY=y;this.imageEl.style.left=this.imageX+'px';this.imageEl.style.top=this.imageY+'px';return[x,y];}}
Product.Config=Class.create();Product.Config.prototype={initialize:function(config){this.config=config;this.taxConfig=this.config.taxConfig;this.settings=$$('.super-attribute-select');this.state=new Hash();this.priceTemplate=new Template(this.config.template);this.prices=config.prices;this.settings.each(function(element){Event.observe(element,'change',this.configure.bind(this))}.bind(this));this.settings.each(function(element){var attributeId=element.id.replace(/[a-z]*/,'');if(attributeId&&this.config.attributes[attributeId]){element.config=this.config.attributes[attributeId];element.attributeId=attributeId;this.state[attributeId]=false;}}.bind(this))
var childSettings=[];for(var i=this.settings.length-1;i>=0;i--){var prevSetting=this.settings[i-1]?this.settings[i-1]:false;var nextSetting=this.settings[i+1]?this.settings[i+1]:false;if(i==0){this.fillSelect(this.settings[i])}
else{this.settings[i].disabled=true;}
$(this.settings[i]).childSettings=childSettings.clone();$(this.settings[i]).prevSetting=prevSetting;$(this.settings[i]).nextSetting=nextSetting;childSettings.push(this.settings[i]);}
if(config.defaultValues){this.values=config.defaultValues;}
var separatorIndex=window.location.href.indexOf('#');if(separatorIndex!=-1){var paramsStr=window.location.href.substr(separatorIndex+1);var urlValues=paramsStr.toQueryParams();if(!this.values){this.values={};}
for(var i in urlValues){this.values[i]=urlValues[i];}}
this.configureForValues();document.observe("dom:loaded",this.configureForValues.bind(this));},configureForValues:function(){if(this.values){this.settings.each(function(element){var attributeId=element.attributeId;element.value=(typeof(this.values[attributeId])=='undefined')?'':this.values[attributeId];this.configureElement(element);}.bind(this));}},configure:function(event){var element=Event.element(event);this.configureElement(element);},configureElement:function(element){this.reloadOptionLabels(element);if(element.value){this.state[element.config.id]=element.value;if(element.nextSetting){element.nextSetting.disabled=false;this.fillSelect(element.nextSetting);this.resetChildren(element.nextSetting);}}
else{this.resetChildren(element);}
this.reloadPrice();},reloadOptionLabels:function(element){var selectedPrice;if(element.options[element.selectedIndex].config){selectedPrice=parseFloat(element.options[element.selectedIndex].config.price)}
else{selectedPrice=0;}
for(var i=0;i<element.options.length;i++){if(element.options[i].config){element.options[i].text=this.getOptionLabel(element.options[i].config,element.options[i].config.price-selectedPrice);}}},resetChildren:function(element){if(element.childSettings){for(var i=0;i<element.childSettings.length;i++){element.childSettings[i].selectedIndex=0;element.childSettings[i].disabled=true;if(element.config){this.state[element.config.id]=false;}}}},fillSelect:function(element){var attributeId=element.id.replace(/[a-z]*/,'');var options=this.getAttributeOptions(attributeId);this.clearSelect(element);element.options[0]=new Option(this.config.chooseText,'');var prevConfig=false;if(element.prevSetting){prevConfig=element.prevSetting.options[element.prevSetting.selectedIndex];}
if(options){var index=1;for(var i=0;i<options.length;i++){var allowedProducts=[];if(prevConfig){for(var j=0;j<options[i].products.length;j++){if(prevConfig.config.allowedProducts&&prevConfig.config.allowedProducts.indexOf(options[i].products[j])>-1){allowedProducts.push(options[i].products[j]);}}}else{allowedProducts=options[i].products.clone();}
if(allowedProducts.size()>0){options[i].allowedProducts=allowedProducts;element.options[index]=new Option(this.getOptionLabel(options[i],options[i].price),options[i].id);element.options[index].config=options[i];index++;}}}},getOptionLabel:function(option,price){var price=parseFloat(price);if(this.taxConfig.includeTax){var tax=price/(100+this.taxConfig.defaultTax)*this.taxConfig.defaultTax;var excl=price-tax;var incl=excl*(1+(this.taxConfig.currentTax/100));}else{var tax=price*(this.taxConfig.currentTax/100);var excl=price;var incl=excl+tax;}
if(this.taxConfig.showIncludeTax||this.taxConfig.showBothPrices){price=incl;}else{price=excl;}
var str=option.label;if(price){if(this.taxConfig.showBothPrices){str+=' '+this.formatPrice(excl,true)+' ('+this.formatPrice(price,true)+' '+this.taxConfig.inclTaxTitle+')';}else{str+=' '+this.formatPrice(price,true);}}
return str;},formatPrice:function(price,showSign){var str='';price=parseFloat(price);if(showSign){if(price<0){str+='-';price=-price;}
else{str+='+';}}
var roundedPrice=(Math.round(price*100)/100).toString();if(this.prices&&this.prices[roundedPrice]){str+=this.prices[roundedPrice];}
else{str+=this.priceTemplate.evaluate({price:price.toFixed(2)});}
return str;},clearSelect:function(element){for(var i=element.options.length-1;i>=0;i--){element.remove(i);}},getAttributeOptions:function(attributeId){if(this.config.attributes[attributeId]){return this.config.attributes[attributeId].options;}},reloadPrice:function(){var price=0;var oldPrice=0;for(var i=this.settings.length-1;i>=0;i--){var selected=this.settings[i].options[this.settings[i].selectedIndex];if(selected.config){price+=parseFloat(selected.config.price);oldPrice+=parseFloat(selected.config.oldPrice);}}
optionsPrice.changePrice('config',{'price':price,'oldPrice':oldPrice});optionsPrice.reload();return price;if($('product-price-'+this.config.productId)){$('product-price-'+this.config.productId).innerHTML=price;}
this.reloadOldPrice();},reloadOldPrice:function(){if($('old-price-'+this.config.productId)){var price=parseFloat(this.config.oldPrice);for(var i=this.settings.length-1;i>=0;i--){var selected=this.settings[i].options[this.settings[i].selectedIndex];if(selected.config){price+=parseFloat(selected.config.price);}}
if(price<0)
price=0;price=this.formatPrice(price);if($('old-price-'+this.config.productId)){$('old-price-'+this.config.productId).innerHTML=price;}}}}
Product.Super={};Product.Super.Configurable=Class.create();Product.Super.Configurable.prototype={initialize:function(container,observeCss,updateUrl,updatePriceUrl,priceContainerId){this.container=$(container);this.observeCss=observeCss;this.updateUrl=updateUrl;this.updatePriceUrl=updatePriceUrl;this.priceContainerId=priceContainerId;this.registerObservers();},registerObservers:function(){var elements=this.container.getElementsByClassName(this.observeCss);elements.each(function(element){Event.observe(element,'change',this.update.bindAsEventListener(this));}.bind(this));return this;},update:function(event){var elements=this.container.getElementsByClassName(this.observeCss);var parameters=Form.serializeElements(elements,true);new Ajax.Updater(this.container,this.updateUrl+'?ajax=1',{parameters:parameters,onComplete:this.registerObservers.bind(this)});var priceContainer=$(this.priceContainerId);if(priceContainer){new Ajax.Updater(priceContainer,this.updatePriceUrl+'?ajax=1',{parameters:parameters});}}}
Product.OptionsPrice=Class.create();Product.OptionsPrice.prototype={initialize:function(config){this.productId=config.productId;this.priceFormat=config.priceFormat;this.includeTax=config.includeTax;this.defaultTax=config.defaultTax;this.currentTax=config.currentTax;this.productPrice=config.productPrice;this.showIncludeTax=config.showIncludeTax;this.showBothPrices=config.showBothPrices;this.productPrice=config.productPrice;this.productOldPrice=config.productOldPrice;this.skipCalculate=config.skipCalculate;this.duplicateIdSuffix=config.idSuffix;this.specialTaxPrice=config.specialTaxPrice;this.oldPlusDisposition=config.oldPlusDisposition;this.plusDisposition=config.plusDisposition;this.oldMinusDisposition=config.oldMinusDisposition;this.minusDisposition=config.minusDisposition;this.optionPrices={};this.containers={};this.displayZeroPrice=true;this.initPrices();},setDuplicateIdSuffix:function(idSuffix){this.duplicateIdSuffix=idSuffix;},initPrices:function(){this.containers[0]='product-price-'+this.productId;this.containers[1]='bundle-price-'+this.productId;this.containers[2]='price-including-tax-'+this.productId;this.containers[3]='price-excluding-tax-'+this.productId;this.containers[4]='old-price-'+this.productId;},changePrice:function(key,price){this.optionPrices[key]=price;},getOptionPrices:function(){var price=0;var nonTaxable=0;var oldPrice=0;var priceInclTax=0;var currentTax=this.currentTax;$H(this.optionPrices).each(function(pair){if('undefined'!=typeof(pair.value.price)&&'undefined'!=typeof(pair.value.oldPrice)){price+=parseFloat(pair.value.price);oldPrice+=parseFloat(pair.value.oldPrice);}else if(pair.key=='nontaxable'){nonTaxable=pair.value;}else if(pair.key=='priceInclTax'){priceInclTax+=pair.value;}else if(pair.key=='optionsPriceInclTax'){priceInclTax+=pair.value*(100+currentTax)/100;}else{price+=parseFloat(pair.value);oldPrice+=parseFloat(pair.value);}});var result=[price,nonTaxable,oldPrice,priceInclTax];return result;},reload:function(){var price;var formattedPrice;var optionPrices=this.getOptionPrices();var nonTaxable=optionPrices[1];var optionOldPrice=optionPrices[2];var priceInclTax=optionPrices[3];optionPrices=optionPrices[0];$H(this.containers).each(function(pair){var _productPrice;var _plusDisposition;var _minusDisposition;if($(pair.value)){if(pair.value=='old-price-'+this.productId&&this.productOldPrice!=this.productPrice){_productPrice=this.productOldPrice;_plusDisposition=this.oldPlusDisposition;_minusDisposition=this.oldMinusDisposition;}else{_productPrice=this.productPrice;_plusDisposition=this.plusDisposition;_minusDisposition=this.minusDisposition;}
var price=0;if(pair.value=='old-price-'+this.productId&&optionOldPrice!==undefined){price=optionOldPrice+parseFloat(_productPrice);}else{price=optionPrices+parseFloat(_productPrice);priceInclTax+=parseFloat(_productPrice)*(100+this.currentTax)/100;}
if(this.specialTaxPrice=='true'){var excl=price;var incl=priceInclTax;}else if(this.includeTax=='true'){var tax=price/(100+this.defaultTax)*this.defaultTax;var excl=price-tax;var incl=excl*(1+(this.currentTax/100));}else{var tax=price*(this.currentTax/100);var excl=price;var incl=excl+tax;}
excl+=parseFloat(_plusDisposition);incl+=parseFloat(_plusDisposition);excl-=parseFloat(_minusDisposition);incl-=parseFloat(_minusDisposition);excl+=parseFloat(nonTaxable);incl+=parseFloat(nonTaxable);if(pair.value=='price-including-tax-'+this.productId){price=incl;}else if(pair.value=='old-price-'+this.productId){if(this.showIncludeTax||this.showBothPrices){price=incl;}else{price=excl;}}else{if(this.showIncludeTax){price=incl;}else{if(!this.skipCalculate||_productPrice==0){price=excl;}else{price=optionPrices+parseFloat(_productPrice);}}}
if(price<0)price=0;if(price>0||this.displayZeroPrice){formattedPrice=this.formatPrice(price);}else{formattedPrice='';}
if($(pair.value).select('.price')[0]){$(pair.value).select('.price')[0].innerHTML=formattedPrice;if($(pair.value+this.duplicateIdSuffix)&&$(pair.value+this.duplicateIdSuffix).select('.price')[0]){$(pair.value+this.duplicateIdSuffix).select('.price')[0].innerHTML=formattedPrice;}}else{$(pair.value).innerHTML=formattedPrice;if($(pair.value+this.duplicateIdSuffix)){$(pair.value+this.duplicateIdSuffix).innerHTML=formattedPrice;}}};}.bind(this));},formatPrice:function(price){return formatCurrency(price,this.priceFormat);}};Product.ACPconfigurable=Class.create();Product.ACPconfigurable.prototype={config:{},initialize:function(config){this.config=config;this.taxConfig=this.config.taxConfig;this.settings=$$('.super-attribute-select-acp');this.state=new Hash();this.priceTemplate=new Template(this.config.template);this.prices=config.prices;this.settings.each(function(element){Event.observe(element,'change',this.configure.bind(this))}.bind(this));this.settings.each(function(element){var attributeId=element.id.replace(/[a-z]*/,'');if(attributeId&&this.config.attributes[attributeId]){element.config=this.config.attributes[attributeId];element.attributeId=attributeId;this.state[attributeId]=false;}}.bind(this))
var childSettings=[];for(var i=this.settings.length-1;i>=0;i--){var prevSetting=this.settings[i-1]?this.settings[i-1]:false;var nextSetting=this.settings[i+1]?this.settings[i+1]:false;if(i==0){this.fillSelect(this.settings[i])}
else{this.settings[i].disabled=true;}
$(this.settings[i]).childSettings=childSettings.clone();$(this.settings[i]).prevSetting=prevSetting;$(this.settings[i]).nextSetting=nextSetting;childSettings.push(this.settings[i]);}
var separatorIndex=window.location.href.indexOf('#');if(separatorIndex!=-1){var paramsStr=window.location.href.substr(separatorIndex+1);this.values=paramsStr.toQueryParams();this.settings.each(function(element){var attributeId=element.attributeId;element.value=(typeof(this.values[attributeId])=='undefined')?'':this.values[attributeId];this.configureElement(element);}.bind(this));}},fillSelect:function(element){var attributeId=element.id.replace(/[a-z]*/,'');var options=this.getAttributeOptions(attributeId);this.clearSelect(element);element.options[0]=new Option(this.config.chooseText,'');var prevConfig=false;if(element.prevSetting){prevConfig=element.prevSetting.options[element.prevSetting.selectedIndex];}
if(options){var index=1;for(var i=0;i<options.length;i++){var allowedProducts=[];if(prevConfig){for(var j=0;j<options[i].products.length;j++){if(prevConfig.config.allowedProducts&&prevConfig.config.allowedProducts.indexOf(options[i].products[j])>-1){allowedProducts.push(options[i].products[j]);}}}else{allowedProducts=options[i].products.clone();}
if(allowedProducts.size()>0){options[i].allowedProducts=allowedProducts;element.options[index]=new Option(this.getOptionLabel(options[i],options[i].price),options[i].id);element.options[index].config=options[i];index++;}}}},configure:function(event){var element=Event.element(event);this.configureElement(element);},configureElement:function(element){this.reloadOptionLabels(element);if(element.value){this.state[element.config.id]=element.value;if(element.nextSetting){element.nextSetting.disabled=false;this.fillSelect(element.nextSetting);this.resetChildren(element.nextSetting);}}
else{this.resetChildren(element);}
this.reloadPrice();},getAttributeOptions:function(attributeId){if(this.config.attributes[attributeId]){return this.config.attributes[attributeId].options;}},clearSelect:function(element){for(var i=element.options.length-1;i>=0;i--){element.remove(i);}},getOptionLabel:function(option,price){var price=parseFloat(price);if(this.taxConfig.includeTax){var tax=price/(100+this.taxConfig.defaultTax)*this.taxConfig.defaultTax;var excl=price-tax;var incl=excl*(1+(this.taxConfig.currentTax/100));}else{var tax=price*(this.taxConfig.currentTax/100);var excl=price;var incl=excl+tax;}
if(this.taxConfig.showIncludeTax||this.taxConfig.showBothPrices){price=incl;}else{price=excl;}
var str=option.label;if(price){if(this.taxConfig.showBothPrices){str+=' '+this.formatPrice(excl,true)+' ('+this.formatPrice(price,true)+' '+this.taxConfig.inclTaxTitle+')';}else{str+=' '+this.formatPrice(price,true);}}
return str;},formatPrice:function(price,showSign){var str='';price=parseFloat(price);if(showSign){if(price<0){str+='-';price=-price;}
else{str+='+';}}
var roundedPrice=(Math.round(price*100)/100).toString();if(this.prices&&this.prices[roundedPrice]){str+=this.prices[roundedPrice];}
else{str+=this.priceTemplate.evaluate({price:price.toFixed(2)});}
return str;},reloadPrice:function(){var price=0;for(var i=this.settings.length-1;i>=0;i--){var selected=this.settings[i].options[this.settings[i].selectedIndex];if(selected.config){price+=parseFloat(selected.config.price);}}
optionsPrice.changePrice('configAcp',price);optionsPrice.reload();return price;},reloadOptionLabels:function(element){var selectedPrice;if(element.options[element.selectedIndex].config){selectedPrice=parseFloat(element.options[element.selectedIndex].config.price)}
else{selectedPrice=0;}
for(var i=0;i<element.options.length;i++){if(element.options[i].config){element.options[i].text=this.getOptionLabel(element.options[i].config,element.options[i].config.price-selectedPrice);}}},resetChildren:function(element){if(element.childSettings){for(var i=0;i<element.childSettings.length;i++){element.childSettings[i].selectedIndex=0;element.childSettings[i].disabled=true;if(element.config){this.state[element.config.id]=false;}}}},reloadOldPrice:function(){if($('old-price-'+this.config.productId)){var price=parseFloat(this.config.oldPrice);for(var i=this.settings.length-1;i>=0;i--){var selected=this.settings[i].options[this.settings[i].selectedIndex];if(selected.config){price+=parseFloat(selected.config.price);}}
if(price<0)
price=0;price=this.formatPrice(price);if($('old-price-'+this.config.productId)){$('old-price-'+this.config.productId).innerHTML=price;}}}};Product.DownloadableAcp=Class.create();Product.DownloadableAcp.prototype={config:{},initialize:function(config){this.config=config;this.reloadPrice();},reloadPrice:function(){var price=0;var configNew=this.config;$$('.product-downloadable-link-acp').each(function(elm){if(configNew[elm.value]&&elm.checked){price+=parseFloat(configNew[elm.value]);}});try{var _displayZeroPrice=optionsPrice.displayZeroPrice;optionsPrice.displayZeroPrice=false;optionsPrice.changePrice('downloadableAcp',price);optionsPrice.reload();optionsPrice.displayZeroPrice=_displayZeroPrice;}catch(e){}}};function validateDownloadableCallback(elmId,result){var container=$('downloadable-links-list');if(result=='failed'){container.removeClassName('validation-passed');container.addClassName('validation-failed');}else{container.removeClassName('validation-failed');container.addClassName('validation-passed');}};
