/*
Simple Image Trail script- By JavaScriptKit.com
Visit http://www.javascriptkit.com for this script and more
This notice must stay intact
*/

var offsetfrommouse = [15,25]; //image x,y offsets from cursor position in pixels. Enter 0,0 for no offset
var preview_timer;
var preview_imagewidth;
var preview_imageheight;

function truebody()
{
	return (!window.opera && document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

function hidetrail()
{	
	document.getElementById('preview_container').style.display = 'none';
	document.onmousemove = null;
	clearTimeout(preview_timer);
}

function preview_photo(url, title, width, height)
{
	preview_timer = setTimeout("_preview_photo('"+url+"','"+title+"',"+width+","+height+");",200);
}

function _preview_photo(url, title, width, height)
{
	var docwidth = document.all? truebody().scrollLeft+truebody().clientWidth : pageXOffset+window.innerWidth - offsetfrommouse[0];
	var docheight = document.all? Math.min(truebody().scrollHeight, truebody().clientHeight) : Math.min(window.innerHeight);
	preview_imagewidth = width;
	preview_imageheight = height;
	if( (navigator.userAgent.indexOf("Konqueror")==-1  || navigator.userAgent.indexOf("Firefox")!=-1 || (navigator.userAgent.indexOf("Opera")==-1 && navigator.appVersion.indexOf("MSIE")!=-1)) && (docwidth>650 && docheight>500)) {
		document.onmousemove = followmouse;
		document.getElementById('preview_container').innerHTML = '<p>' + title + '</p><img src="' + url + '" border="0">'; ;
		document.getElementById('preview_container').style.display="block";
		
		followmouse();
	}
}

function followmouse(e)
{
	var xcoord=offsetfrommouse[0]
	var ycoord=offsetfrommouse[1]

	var docwidth=document.all? truebody().scrollLeft+truebody().clientWidth : pageXOffset+window.innerWidth-15
	var docheight=document.all? Math.min(truebody().scrollHeight, truebody().clientHeight) : Math.min(window.innerHeight)

	if (typeof e != 'undefined'){
		if (docwidth - e.pageX < preview_imagewidth + 2*offsetfrommouse[0]){
			xcoord = e.pageX - xcoord - preview_imagewidth; // Move to the left side of the cursor
		} else {
			xcoord += e.pageX;
		}
		if (docheight - e.pageY < preview_imageheight + 2*offsetfrommouse[1]){
			ycoord += e.pageY - Math.max(0,(2*offsetfrommouse[1] + preview_imageheight + e.pageY - docheight - truebody().scrollTop));
		} else {
			ycoord += e.pageY;
		}

	} else if (typeof window.event != 'undefined'){
		if (docwidth - event.clientX < preview_imagewidth + 2*offsetfrommouse[0]){
			xcoord = event.clientX + truebody().scrollLeft - xcoord - preview_imagewidth; // Move to the left side of the cursor
		} else {
			xcoord += truebody().scrollLeft+event.clientX
		}
		if (docheight - event.clientY < (preview_imageheight + 2*offsetfrommouse[1])){
			ycoord += event.clientY + truebody().scrollTop - Math.max(0,(2*offsetfrommouse[1] + preview_imageheight + event.clientY - docheight));
		} else {
			ycoord += truebody().scrollTop + event.clientY;
		}
	}
	document.getElementById('preview_container').style.left=xcoord + 'px';
	document.getElementById('preview_container').style.top=ycoord + 'px';
}

