// Thumbnail expansion and reduction animation
//use expandthumb(142, 500, 449) to increase and 
//reducethumb(142) to decrease the thumbnail
//142 represents the name of the thumbimage.. it should be like thumb142
// for reduceimage 
// and the expanded image id will be screen142 for the value 142 in 
//expandimage 
//500 and 449 are the  size of the image

exid = 0;
exstep = 0;
exwdth = 0;
exht = 0;
extp = 0;
exlft = 0;
extot = 0;
extotst = 15;

function expandthumb(thumbid, fullwidth, fullheight) {
  if (extot != 0) {
    clearTimeout(extot);
  }
  if (exid > 0 && exid != thumbid) {
    restorethumb();
  }
  if (exid != thumbid) {
    img = document.getElementById("screen" + thumbid);
    img.style.display = 'block';
    exid = thumbid;
    exstep = 1;
    exwdth = fullwidth;
    exht = fullheight;
    extp = img.offsetTop;
    exlft = img.offsetLeft;
  } else if (exstep < 1) {
    exstep = 1;
  }
  expandstep();
}

function doexpand() {
  img = document.getElementById("screen" + exid);
  thumb = document.getElementById("thumb" + exid);
  myscroll = getScroll();
  if (extp + thumb.height > myscroll.top + myscroll.height) {
    finaltop = myscroll.top + myscroll.height - exht;
  } else {
    finaltop = extp + thumb.height - exht;
  }
  if (finaltop < myscroll.top) { finaltop = myscroll.top; }
  img.style.top = finaltop + ((extp - finaltop) * (extotst - exstep) / extotst) + 'px';

  if (exlft + thumb.width > myscroll.left + myscroll.width) {
    finalleft = myscroll.left + myscroll.width - exwdth;
  } else {
    finalleft = exlft + thumb.width - exwdth;
  }
  if (finalleft < myscroll.left) { finalleft = myscroll.left; }
  img.style.left = finalleft + ((exlft - finalleft) * (extotst - exstep) / extotst) + 'px';

  img.width = thumb.width + ((exwdth - thumb.width) * exstep / extotst);
  img.height = thumb.height + ((exht - thumb.height) * exstep / extotst);
}

function restorethumb() {
  img = document.getElementById("screen" + exid);
  img.style.top = '';
  img.style.left = '';
  img.style.display = 'none';
  exid = 0;
}

function expandstep() {
  extot = 0;
  doexpand();
  if (exstep < extotst) {
    exstep++;
    extot = setTimeout("expandstep()", 20);
  }
}

function reducestep() {
  extot = 0;
  doexpand();
  if (exstep > 0) {
    exstep--;
    extot = setTimeout("reducestep()", 20);
  } else {
    restorethumb();
  }
}

function reducethumb(thumbid) {
  if (extot != 0) {
    clearTimeout(extot);
  }
  if (exstep > 0) {
    reducestep();
  }
}

// returns the scroll position and size of the browser
function getScroll() {
  if (document.all && typeof document.body.scrollTop != "undefined") {  
    // IE model
    var ieBox = document.compatMode != "CSS1Compat";
    var cont = ieBox ? document.body : document.documentElement;
    return {
      left:   cont.scrollLeft,
      top:    cont.scrollTop,
      width:  cont.clientWidth,
      height: cont.clientHeight
    };
  } else {
    return {
      left:   window.pageXOffset,
      top:    window.pageYOffset,
      width:  window.innerWidth,
      height: window.innerHeight
    };
  }
}


//IMAGE SWAP CODE
	<!-- Begin
	function MM_swapImgRestore() { //v3.0
	  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
	}
	
	function MM_preloadImages() { //v3.0
	  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
	    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
	    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
	}
	
	function MM_findObj(n, d) { //v3.0
	  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
	    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
	  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
	  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
	}
	
	function MM_swapImage() { //v3.0
	  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
	   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
	}
	// End -->
//IMAGE SWAP CODE