// --- Show Definition popups --- //
var __popupSource = null;
var __popupDefinition = null;
function TogglePopup(request, srcElement, position, hover)
{
	var p = $('popup');
	if (__popupDefinition) __popupDefinition.hide();
	if (__popupSource != srcElement) p.hide();
	if (srcElement == p) return; // hide when the popup is clicked
	
	var dy = (position == "above" ? -55 : srcElement.offsetHeight);
	p.clonePosition(srcElement, {setWidth:false, setHeight:false, offsetTop:dy});
	$('popup_' + request).show();
	if (hover) $('closeLink').hide(); else $('closeLink').show();
	p.toggle();
	gap = (document.body.offsetLeft + document.body.offsetWidth) - (p.positionedOffset().left + p.getWidth());
	if (gap < 0) p.style.left = (p.positionedOffset().left + gap - 5) + "px";
	__popupSource = srcElement;
	__popupDefinition = $('popup_' + request);
}
