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 zoomImagesURI   = '/images-global/zoom/';    if (typeof(zoomImagesBase) != "undefined") {    zoomImagesURI = zoomImagesBase + zoomImagesURI; }   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); }