

var g_poppedUp = false;

//
// this function determines whether the event is the equivalent of the microsoft
// mouseleave or mouseenter events.
//
function isMouseLeaveOrEnter(e, handler)
{
    if (e.type != 'mouseout' && e.type != 'mouseover')
        return false;
    var reltg = e.relatedTarget ? e.relatedTarget : e.type == 'mouseout' ? e.toElement : e.fromElement;
    while (reltg && reltg != handler)
        reltg = reltg.parentNode;
    return (reltg != handler);
}

function findPos(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}

// this function determines whether the event is the equivalent of the microsoft // mouseleave or mouseenter events. function isMouseLeaveOrEnter(e, handler) { if (e.type != 'mouseout' && e.type != 'mouseover') return false; var reltg = e.relatedTarget ? e.relatedTarget : e.type == 'mouseout' ? e.toElement : e.fromElement; while (reltg && reltg != handler) reltg = reltg.parentNode; return (reltg != handler); }

function mouseOverDist(in_distid, in_name, in_el, in_ckids)
{
    var popup = document.getElementById(in_name + in_distid);
    var pos = findPos(in_el);
    var labelHeight = Element.getHeight(in_el);

    var xx = pos[0];
    if (xx > 300)  xx = 300;
    var yy = pos[1] + labelHeight;

    popup.style.left = xx + 'px';
    popup.style.top = yy + 'px';

    var ht = in_ckids / 2 + 4;
    ht = ht + 'em';

    popup.style.width = '500px';
    popup.style.height = ht;

    new Effect.Appear(in_name + in_distid, {duration: 0.2});
    window.setTimeout('document.getElementById("' + in_name + in_distid + '").finishedshowing = true;', 100);
}

function hideMePlease(in_name, in_distid)
{
    var popup = document.getElementById(in_name + in_distid);

    this.userMovedOverMe = false;
    popup.finishedshowing= false;
    popup.style.width = '500px';
    popup.style.height = '6em';

    new Effect.Fade(in_name + in_distid, {duration: 0.1});
}



function startFadePopupFromLabel(in_name, in_number)
{
    var el2 = document.getElementById('select_' + in_name + in_number);
    el2.userMovedOverMe = false;
    window.setTimeout('continueFadePopup("' + in_name + '", ' + in_number + ');', 100);
}

function startFadePopupFromPopup(in_name, in_number)
{
    var el = document.getElementById(in_name + in_number);
    el.userMovedOverMe = false;
    window.setTimeout('continueFadePopup("' + in_name + '", ' + in_number + ');', 100);
}

function continueFadePopup(in_name, in_number)
{
    var el = document.getElementById(in_name + in_number);
    var el2 = document.getElementById('select_' + in_name + in_number);

    if (el.userMovedOverMe == true
        || el2.userMovedOverMe == true)
        return;

    hideMePlease(in_name, in_number);
}

