var zBox,zStep=0,zLink

function doZoom() {
    zStep+=1;zPct=(10-zStep)/10
if (document.layers) {
	zBox.moveTo(toX+zPct*(fromX-toX),toY+zPct*(fromY-toY));
	zBox.document.open();
	zBox.document.write("<table width='"+maxW*(1-zPct)+"' height="+maxH*(1-zPct)+" border=2 cellspacing=0><tr><td></td></tr></table>");
	zBox.document.close();
  }else{
	zBox.style.border="2px solid #999999";
	zBox.style.left=toX+zPct*(fromX-toX);
	zBox.style.top=toY+zPct*(fromY-toY);
	zBox.style.width=maxW*(1-zPct);
	zBox.style.height=maxH*(1-zPct);
	}
zBox.style.visibility="visible";
  if  (zStep < 10) setTimeout("doZoom("+fromX+","+fromY+","+toX+","+toY+")",30);
  else{zBox.style.visibility='hidden';zStep=0;
  if (zLink) {
  var w=window.open(''+ zLink + '','','width='+maxW+',height='+maxH+',left='+adjX+',top='+adjY+',scrollbars=auto,resizable');
  }
 }
}

function Lvl_Zoom(evt,zlink,maxw,maxh,tox,toy) {
  if (arguments.length > 2)
  scrollH=(window.pageYOffset!=null)?window.pageYOffset:document.body.scrollTop;
     maxW=maxw?maxw:window.innerWidth?innerWidth:document.body.clientWidth;
     maxH=maxh?maxh:window.innerHeight?innerHeight:document.body.clientHeight;
      toX=tox?tox:0;
      toY=(toy?toy:0)+scrollH;
    fromX=evt.pageX?evt.pageX:evt.clientX;
    fromY=(evt.pageY?evt.pageY:evt.clientY)+(document.all?scrollH:0);
     adjX=toX+evt.screenX-fromX;
     adjY=toY+evt.screenY-fromY;
 if (document.createElement && document.body.appendChild && !zBox) {
	zBox=document.createElement("div");
	zBox.style.position="absolute";
	document.body.appendChild(zBox);
 }else if (document.all && !zBox) {
	document.all[document.all.length-1].outerHTML+='<div id="zBoxDiv" style="position:absolute"></div>';
	zBox=document.all.zBoxDiv;
 }else if (document.layers && !zBox) {
	zBox=new Layer(maxW);zBox.style=zBox;
 }
    zLink=zlink;
    doZoom();
}
