//Created By MR
var growImages = [];

function closeImage(id) {
  var gi = growImages[id];
  var pos = findPos(gi.obj);
  var img = gi.obj.getElementsByTagName('IMG')[0];
  pos[2] = img.offsetWidth + 28;
  pos[3] = img.offsetHeight + 28;
  var posOpener = findPos(gi.opener);
  var img = gi.opener.getElementsByTagName('IMG')[0];
  posOpener[2] = img.offsetWidth + 28;
  posOpener[3] = img.offsetHeight + 28;
  growImages[id] = {
      opener:gi.opener,
      obj:gi.obj,
      h1:gi.h1,
      h2:gi.h2,
      w1:gi.w1,
      img:gi.img,
      td:gi.td,
      a:gi.a,
      startW:pos[2],
      startH:pos[3],
      endW:posOpener[2],
      endH:posOpener[3],
      startX:pos[0],
      startY:pos[1],
      endX:posOpener[0],
      endY:posOpener[1],
      w:pos[2],
      h:pos[3],
      x:pos[0],
      y:pos[1]
  };
  growImagesDo();
  return false;
}

function openImage(obj) {
  var myImg = obj;
  while(myImg.tagName != 'TABLE') myImg = myImg.parentNode;
  for(var g = 0; g < growImages.length; g++) {
    if(growImages[g].obj == myImg) {
      closeImage(g);
      return false;
    }
  }
  var imgLarge = new Image();
  imgLarge.onload = function() {
    imgLarge.onload = null;
    
    var pos = findPos(myImg);
    var newImg = myImg.cloneNode(true);
    newImg.style.position = 'absolute';
    newImg.style.zIndex = 1000;
    newImg.style.left = pos[0] + 'px';
    newImg.style.top = (pos[1]) + 'px';
    text.appendChild(newImg);
    
    var divs = newImg.getElementsByTagName('DIV');
    for(var i = 0; i < divs.length; i++) {
      if(divs[i].className == 's7') var h1 = divs[i];
      if(divs[i].className == 's8') var h2 = divs[i];
      if(divs[i].className == 's11') var w1 = divs[i];
    }
    var img = newImg.getElementsByTagName('IMG')[0];
    var td = newImg.getElementsByTagName('TD')[4];
    pos[2] = img.offsetWidth + 28;
    pos[3] = img.offsetHeight + 28;
    img.src = obj.href;
    var a = newImg.getElementsByTagName('A')[0];
    a.className = 'zoom_out';
    var CW = navigator.userAgent.indexOf("MSIE") >= 0 ? document.body.clientWidth : window.innerWidth;
    var CH = navigator.userAgent.indexOf("MSIE") >= 0 ? document.body.clientHeight : window.innerHeight;
    CW -= 50;
    CH -= 100;
    
    var LW = imgLarge.width;
    var LH = imgLarge.height;
    if(LW > CW || LH > CH) {
      if(LW / LH >= CW / CH) {
        LH = CW * LH / LW;
        LW = CW;
      } else {
        LW = CH * LW / LH;
        LH = CH;
      }
    }
    LW = Math.floor(LW);
    LH = Math.floor(LH);
    var endX = pos[0] - (LW - pos[2]) / 2;
    var endY = pos[1] - (LH - pos[3]) / 2;
    
    var growIndex = growImages.length;
    growImages[growIndex] = {
      opener:myImg,
      obj:newImg,
      h1:h1,
      h2:h2,
      w1:w1,
      img:img,
      td:td,
      a:a,
      startW:pos[2],
      startH:pos[3],
      endW:LW,
      endH:LH,
      startX:pos[0],
      startY:pos[1],
      endX:endX,
      endY:endY,
      w:pos[2],
      h:pos[3],
      x:pos[0],
      y:pos[1]
    };
    myImg.style.visibility = 'hidden';
    growImagesDo();
  }
  imgLarge.src = obj.href;  
}

function growImagesDo() {
  var scrTop = navigator.userAgent.indexOf("MSIE") >= 0 ? document.body.scrollTop : window.scrollY;
  var CW = navigator.userAgent.indexOf("MSIE") >= 0 ? document.body.clientWidth : window.innerWidth;
  var CH = navigator.userAgent.indexOf("MSIE") >= 0 ? document.body.clientHeight : window.innerHeight;
  CW -= 50;
  CH -= 50;
  for(var g = 0; g < growImages.length; g++) {
    var gi = growImages[g];
    if(gi.obj) {
      speed = 10;
      if((gi.w < gi.endW && gi.startW < gi.endW) || (gi.w > gi.endW && gi.startW > gi.endW)) {
        gi.w += (gi.endW - gi.startW) / speed;
        gi.h += (gi.endH - gi.startH) / speed;
        
        var ttt = 20;
        gi.x += (gi.endX - gi.startX) / speed;
        gi.y += (gi.endY - gi.startY) / speed;
        gi.x = gi.x > ttt ? gi.x : ttt;
        gi.y = gi.y > ttt + scrTop ? gi.y : ttt + scrTop;
        gi.y = gi.y - scrTop + gi.h > CH ? CH + scrTop - gi.h : gi.y;
        gi.y = gi.y > ttt + scrTop ? gi.y : ttt + scrTop;
            
        tmpW = Math.floor(gi.w);
        gi.obj.style.left = gi.x + 'px';
        gi.obj.style.top = gi.y + 'px';
        gi.img.style.width = tmpW + 'px';
        gi.img.style.height = gi.h + 'px';
        gi.td.width = tmpW;
        gi.h1.style.height = (gi.h - 5) + 'px';
        gi.h2.style.height = (gi.h - 5) + 'px';
        gi.w1.style.width = (tmpW - 5) + 'px';
        gi.a.style.marginLeft = (tmpW - 25) + 'px';
        window.setTimeout("growImagesDo()", 25);
      } else if(gi.startW > gi.endW) {
        text.removeChild(gi.obj);
        gi.opener.style.visibility = 'visible';
        gi.obj = null;
      }
    }
  }
}

