var set_image_zoom_defined = true;

function set_image_zoom()
{
  var imgList = document.getElementsByTagName("img");
  
  for (var i=0; i<imgList.length; i++)
  {
    if (imgList[i].className == "zoomable")
    {
      make_zoomable(imgList[i]);
    }
  }
  return true;

}

function close_zoom()
{
  var zoomDiv = document.getElementById("zoomDiv");
  var zoomImgBG = document.getElementById("zoomImgBG");
  zoomDiv.style.visibility = "hidden";
  zoomImgBG.style.visibility = "hidden";
  return false;
}

function getDocHeight() {
    var D = document;
    return Math.max(
        Math.max(D.body.scrollHeight, D.documentElement.scrollHeight),
        Math.max(D.body.offsetHeight, D.documentElement.offsetHeight),
        Math.max(D.body.clientHeight, D.documentElement.clientHeight)
    );
}

function getScrollXY() {
  var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
    scrOfX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
    scrOfX = document.body.scrollLeft;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
    scrOfX = document.documentElement.scrollLeft;
  }
  return [ scrOfX, scrOfY ];
}

function make_zoomable(element)
{
  element.onclick = function() {
    var zoomBG = document.getElementById("zoomImgBG");
    var zoomImg = document.getElementById("zoomImg");
    var zoomDiv = document.getElementById("zoomDiv");
    var scrollPos = getScrollXY();
    
    zoomImg.style.width = "1200px";
    zoomImg.innerHTML = "<img id='zoomedImage' src='" + element.src + "' onclick='return close_zoom();'><br><br>" +
      "<a href='#' onclick='return close_zoom();'>Click Here to Close</a>";
      
    zoomDiv.style.left = scrollPos[0];
    zoomDiv.style.top = 0;
    zoomDiv.style.height = getDocHeight();
    zoomBG.style.left = scrollPos[0];
    zoomBG.style.top = scrollPos[1];


    zoomDiv.style.visibility = "visible";
    zoomBG.style.visibility = "visible";
    }
  return true;
}

