﻿function jsImageThumb()
{
	if(!document.getElementById || !document.createTextNode){return;}
	this.createContainer=function(id)
	{
		var imageContainer=document.createElement('div');
		if(id){imageContainer.id=id;}
		document.body.appendChild(imageContainer);
		return imageContainer;
	}
	this.setPic=function(o,imgSrc,auto,ix,iy,closeMessage,alternative,id)
	{
		if(!imageContainer){imageContainer=document.getElementById(id);}
		var x=auto?getCoordinates(o,'x')+ix:ix;
		var y=auto?getCoordinates(o,'y')+iy:iy;
		var newimg=document.createElement('img');
		var newa=document.createElement('a');
		newimg.src=imgSrc;
		newimg.alt=o.title?o.title:alternative;
		newa.title=closeMessage;
		newa.href='#';
		newa.onclick=function()
		{
			imageContainer.removeChild(imageContainer.firstChild);
			if(/a/i.test(o.tagName))
			{
				o.focus();
			}
			return false;
		}
		newa.appendChild(newimg);
		if(imageContainer.childNodes.length>0)
		{
			imageContainer.removeChild(imageContainer.firstChild);
		}
		imageContainer.appendChild(newa);
		imageContainer.style.position='absolute';
		imageContainer.style.left=x+'px';
		imageContainer.style.top=y+'px';
		newa.focus();
		return false;			
	}
	this.getCoordinates=function(offsetTrail,d) 
	{
	    var offsetLeft = 0;
	    var offsetTop = 0;
	    while (offsetTrail) 
		{
	        offsetLeft += offsetTrail.offsetLeft;
	        offsetTop += offsetTrail.offsetTop;
	        offsetTrail = offsetTrail.offsetParent;
	    }
	    if (navigator.userAgent.indexOf("Mac") != -1 && 
	        typeof document.body.leftMargin != "undefined") 
		{
	        offsetLeft += document.body.leftMargin;
	        offsetTop += document.body.topMargin;
	    }
		return (d=='x')?offsetLeft:offsetTop;
	}
	var imageContainer=createContainer(null);
}
jsImageThumb();