
// Globals

var objViewLayer = null;
var viewDelay = 200;
var timerID = 0;
var urlFullSizeImage = "";
var popPosX = 200;
var popPosY = 200;

// Syntax:	InitAutoViewer ( <thumbnail image object>, <fullsize view layer>, <url of fullsize image> )
function InitAutoViewer ( thumbImage, viewLayer, fullsizeURL )
{
	if ( typeof (thumbImage) != "object" )
	{
		alert ('Argument "thumbImage" is not an object');
		return;
	}

	if ( typeof (viewLayer) != "object" )
	{
		alert ('Argument "viewLayer" is not an object');
		return;
	}

	thumbImage.onmouseover = new Function ( "urlFullSizeImage='"+escape (fullsizeURL)+"'; StartTimer ( 10, 215, viewDelay );" );
	thumbImage.onmouseout = new Function ("StopTimer (); HideImage ();");

	objViewLayer = viewLayer;
	urlFullSizeImage = fullsizeURL;


	
	// for testing
	viewLayer.style.position = "absolute";
	viewLayer.style.left = popPosX;
	viewLayer.style.top = popPosY;
	viewLayer.style.visibility = "hidden";
	
}

function ShowImage ()
{
	if ( objViewLayer == null )
		return;

	objViewLayer.innerHTML = '<img src="'+unescape (urlFullSizeImage)+'">';
	objViewLayer.style.visibility = "visible";
	
	
}

function StopTimer ()
{
	if ( timerID == 0 )
		return;

	clearTimeout ( timerID );
	timerID = 0;
}

function StartTimer ( viewX, viewY, ms )
{
	if ( objViewLayer == null )
		return;

	objViewLayer.style.left = viewX;
	objViewLayer.style.top = viewY + document.body.scrollTop;
	
	timerID = setTimeout ( "ShowImage ();StopTimer ();", ms );
}

function StartTimer2 ( e, ms )
{
	if ( objViewLayer == null )
		return;
		
	if ( e.pageX )
	{
		viewX = e.pageX - document.body.scrollLeft;
	}
	else
	{
		viewX = e.clientX;
	}

	if ( e.pageY )
	{
		viewY = e.pageY - document.body.scrollTop;
	}
	else
	{
		viewY = e.clientY;
	}

	objViewLayer.style.left = viewX;
	objViewLayer.style.top = viewY + 10 + document.body.scrollTop;
	
	timerID = setTimeout ( "ShowImage ();StopTimer ();", ms );
}

function StartTimerShowUser ( viewX, e, ms )
{
	if ( objViewLayer == null )
		return;
		
	if ( e.pageY )
	{
		viewY = e.pageY - document.body.scrollTop;
	}
	else
	{
		viewY = e.clientY;
	}
	
	objViewLayer.style.left = viewX;
	objViewLayer.style.top = viewY + 10 + document.body.scrollTop;
	
	timerID = setTimeout ( "ShowImage ();StopTimer ();", ms );
}

function HideImage ()
{
	if ( objViewLayer == null )
		return;

	objViewLayer.style.visibility = "hidden";
}
