/*
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,15]; // image x,y offsets from cursor position in pixels. Enter 0,0 for no offset
var displayduration = 0; //duration in seconds image should remain visible. 0 for always.
var currentimageheight = 270;	// maximum image size.

if (document.getElementById || document.all){
	document.write('<div id="trailimageid">');
	document.write('</div>');
}

function gettrailobj(){
	if (document.getElementById)
		return document.getElementById("trailimageid").style
	else if (document.all)
		return document.all.trailimagid.style
}

function gettrailobjnostyle(){
	if (document.getElementById)
		return document.getElementById("trailimageid")
	else if (document.all)
		return document.all.trailimagid
}


function truebody(){
	return (!window.opera && document.compatMode && document.compatMode != "BackCompat") ? document.documentElement : document.body
}

function showtrail(imagename, title, width, height){
	document.onmousemove = followmouse;
	newHTML = '<div style="padding: 5px; background-color: #FFF; border: 1px solid #888;">';
	newHTML = newHTML + '<div align="center" style="padding: 2px 2px 2px 2px;">';
	newHTML = newHTML + '<img src="' + imagename + '" width="' + width + '" height="' + height + '" border="0" />';
	newHTML = newHTML + '</div>';
	newHTML = newHTML + '</div>';

	gettrailobjnostyle().innerHTML = newHTML;
	gettrailobj().display = "inline";
}

function hidetrail(){
	gettrailobj().innerHTML = '';
	gettrailobj().display = 'none';
	document.onmousemove = '';
	gettrailobj().left = '-500px'
}

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 < 380){
			xcoord = e.pageX - xcoord - 400; // Move to the left side of the cursor
		} else {
			xcoord += e.pageX;
		}
		if (docheight - e.pageY < (currentimageheight + 110)) {
			// truebody().scrollTop is always zero in Safari 3.1, so we us documnet.body.scrollTop instead
			if ( document.body ) {
				scrollTop = Math.max(truebody().scrollTop, document.body.scrollTop);
			} else {
				scrollTop = truebody().scrollTop;
			}
			ycoord += e.pageY - Math.max(0, (110 + currentimageheight + e.pageY - docheight - scrollTop));
		} else {
			ycoord += e.pageY;
		}

	} else if (typeof window.event != "undefined") {
		if (docwidth - event.clientX < 380) {
			xcoord = event.clientX + truebody().scrollLeft - xcoord - 400; // Move to the left side of the cursor
		} else {
			xcoord += truebody().scrollLeft+event.clientX
		}
		if (docheight - event.clientY < (currentimageheight + 110)) {
			ycoord += event.clientY + truebody().scrollTop - Math.max(0, (110 + currentimageheight + event.clientY - docheight));
		} else {
			ycoord += truebody().scrollTop + event.clientY;
		}
	}

	if(ycoord < 0) { 
		ycoord = ycoord * -1; 
	}
	gettrailobj().left = xcoord + "px"
	gettrailobj().top = ycoord + "px"

}
