
//
//	Set-up the popup span
//	at preferred position top-left.
//	with an up and down span to hold the scroll images
//	default to scrolling off.
//	default to hidden
//
function _popupInit(popup, up_span, down_span)
{
	popup.preferred_x = 0;
	popup.preferred_y = 0;

	popup.scrolling_y = false;

	popup.up_span = up_span;
	popup.down_span = down_span;

	popup.up_img = popup.up_span.document.images[0];
	popup.down_img = popup.down_span.document.images[0];

	_popupHide(popup);
}

function _popupShow(popup)
{
    if (is.ie) 
	{ 
	}
	else if (is.ns)
	{
	}

	_spanShow(popup);
}

function _popupHide(popup)
{
	_popupScrollStop_y(popup);

	_spanHide(popup.up_span);
	_spanHide(popup.down_span);
//	_spanHideClear(popup);
	_spanHide(popup);
}

function _popupScrollShowControls_y(popup)
{
	if (is.ie) 
    {
/***
		if (_spanGetClip(popup, "t") == 0)
		{
			_spanHide(popup.up_span);
		}
		else
		{
			_spanShow(popup.up_span);
		}

		if (_spanGetClip(popup, "b") >= 500) //popup.document.height )
		{
			_spanHide(popup.down_span);
		}
		else
		{
			_spanShow(popup.down_span);
		}
***/
	}
	else if (is.ns)
	{
		if (popup.clip.top <= 0)
		{
			_spanHide(popup.up_span);
		}
		else
		{
			_spanShow(popup.up_span);
		}

		if (popup.clip.bottom >= popup.document.height)
		{
			_spanHide(popup.down_span);
		}
		else
		{
			_spanShow(popup.down_span);
		}
	}
}

function _popupScrollPostitionControls_y(popup)
{
	_spanHide(popup.up_span);
	_spanHide(popup.down_span);

	if (is.ie) 
    {
		if (popup.style.clip == '')
		{
			popup.up_span.style.pixelLeft = popup.style.pixelLeft + popup.offsetWidth - popup.up_span.offsetWidth;
			popup.up_span.style.pixelTop = popup.style.pixelTop;
			popup.down_span.style.pixelLeft = popup.style.pixelLeft + popup.offsetWidth - popup.down_span.offsetWidth;
			popup.down_span.style.pixelTop = popup.style.pixelTop + popup.offsetHeight - popup.down_span.offsetHeight;
		}
	}
	else if (is.ns)
	{
		popup.up_span.left = popup.left + popup.clip.width - popup.up_span.clip.width;
		popup.up_span.top = popup.top + popup.clip.top;

		popup.down_span.left = popup.left + popup.clip.width - popup.down_span.clip.width;
		popup.down_span.top = popup.top + popup.clip.top + popup.clip.height - popup.up_span.clip.width;

	}
	_popupScrollShowControls_y(popup);
}

function _popupScrollStart_y(popup, y)
{
	popup.scrolling_y = true;

	if (y < 0)
		popup.up_img.src='img/butTd.gif';
	else
		popup.down_img.src='img/butBd.gif';

	_popupScroll_y(popup, y);
}

function _popupScrollStop_y(popup)
{
	popup.scrolling_y = false;

	popup.up_img.src='img/butTu.gif';
	popup.down_img.src='img/butBu.gif';
}

function _popupScroll_y(popup, delta_y)
{
	if (popup.scrolling_y)
	{
	    if (is.ie) 
	    {
			_spanSetClipDelta(popup, "t", delta_y);

		}
		else if (is.ns)
		{
			if (popup.clip.top + delta_y < 0)
			{
				delta_y = - popup.clip.top;
			}
			if (popup.clip.bottom + delta_y > popup.document.height)
			{
				delta_y = popup.document.height - popup.clip.bottom;
			}
			popup.clip.top = popup.clip.top + delta_y;
			popup.clip.bottom = popup.clip.bottom + delta_y;


			popup.top = popup.top - delta_y;

			_popupScrollPostitionControls_y(popup);

			if (popup.clip.bottom < popup.document.height &&
				popup.clip.top > 0)
			{
				setTimeout("_popupScroll_y(document.layers['"+popup.id+"'], "+delta_y+")", 60);
			}
		}
	}
}

///////////////////////////////////////////////////////////////////////////////////////////////////////

function _popupActivate(popup, e, url)
{
    if (is.ie) 
    {
		popup.innerHTML='<TABLE bgcolor="#FF7777"><TR><TD>Loading ...</TD></TR></TABLE>';

		window.document.frames['IE_urlLoader'].location.href = url;

		popup.preferred_x = IE_absoluteX(window.event.srcElement);
		popup.preferred_y = IE_absoluteY(window.event.srcElement);

	}
	else if (is.ns)
	{
		popup.src=url;
		popup.preferred_x = e.target.x;
		popup.preferred_y = e.target.y;
    }

	_popupMovePreferred(popup);
}

function _popupMovePreferred(popup)
{
	x = popup.preferred_x;
	y = popup.preferred_y;

	_spanClearClip(popup);

    if (is.ie) 
    {
/*
		if ( (x +span.clientWidth) > (document.body.clientWidth + document.body.scrollLeft) )
		{
            x = (document.body.clientWidth + document.body.scrollLeft) - span.clientWidth;
		}
		if (x < 0) x=0;

		if ( (y +span.clientHeight) > (document.body.clientHeight + document.body.scrollTop) )
		{
            y = (document.body.clientHeight + document.body.scrollTop) - span.clientHeight;
		}
		if (y < 0) y=0;

//alert("dw1:"+popup.style.pixelWidth);
//alert("w 1:"+popup.clientWidth);
//alert("w 1:"+popup.style.clip);
*/
//		_spanSetClip(popup, 500,500,1000,1000);

//popup.body.style.clip="rect(1cm 2cm 300cm 300cm)";
//alert("popup.style.clip: "+popup.style.clip);
//var clipv = span.clip.split("rect(")[1].split(")")[0].split("px");

/*		var t = return Number(clipv[0]);
		var r = return Number(clipv[1]);
		var b = return Number(clipv[2]);
		var l = return Number(clipv[3]);
		var h = return Number(clipv[2])-Number(clipv[0]);
		var w = return Number(clipv[3])-Number(clipv[1]);
*/

	}
	else if (is.ns)
	{
/*
        if ( (x + popup.clip.width) > (window.pageXOffset + window.innerWidth) )
            x = window.pageXOffset + window.innerWidth - popup.clip.width;
		if (x < 0) x=0;

        if ( (y + popup.clip.height) > (window.pageYOffset + window.innerHeight) )
	        y = window.pageYOffset + window.innerHeight - popup.clip.height;
		if (y < 0) y=0;
 */

//        if ( (y + popup.document.height) > (window.pageYOffset + window.innerHeight) )
//	        y = window.pageYOffset + window.innerHeight - popup.document.height;
//		if (y < 0) y=0;

		popup.clip.width = popup.document.width;

		if ( (y+popup.document.height) > (window.pageYOffset + window.innerHeight))
		{
			popup.clip.height = window.innerHeight - (y - window.pageYOffset);
		}
		else
		{
			popup.clip.height = popup.document.height;
		}
    }

	_spanMove(popup, x, y);
    _spanShow(popup);
	_popupScrollPostitionControls_y(popup);
}

function _popup_onLoad(span_name)
{
    if (is.ie) 
    {
		var popup = document.all[span_name];
//		if (popup.style.visibility=='visible')
		{
			popup.innerHTML=window.document.frames['IE_urlLoader'].document.body.innerHTML;
			_popupMovePreferred(popup);
		}
	}
    else if (is.ns)
    {
		_popupMovePreferred(document.layers[span_name]); 
    }
}

