function OpenWindow (WindowName)
{
    window.radopen(null, WindowName);            
}
function GetElementPosition (el)   
{   
    var parent = null;   
    var pos = {x: 0, y: 0};   
    var box;   

    if (el.getBoundingClientRect)    
    {    
        // IE   
        box = el.getBoundingClientRect();   
        var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;   
        var scrollLeft = document.documentElement.scrollLeft || document.body.scrollLeft;   

        pos.x = box.left + scrollLeft - 2;   
        pos.y = box.top + scrollTop - 2;   
            
        return pos;   
    }   
    else if (document.getBoxObjectFor)    
    {    
        // gecko   
        box = document.getBoxObjectFor(el);   
        pos.x = box.x - 2;   
        pos.y = box.y - 2;   
    }   
    else    
    {    
        // safari/opera   
        pos.x = el.offsetLeft;   
        pos.y = el.offsetTop;   
        parent = el.offsetParent;   
        if (parent != el)   
        {   
            while (parent)    
            {   
                pos.x += parent.offsetLeft;   
                pos.y += parent.offsetTop;   
                parent = parent.offsetParent;   
            }   
        }   
    }   


    if (window.opera)   
    {   
        parent = el.offsetParent;   
            
        while (parent && parent.tagName != 'BODY' && parent.tagName != 'HTML')    
        {   
            pos.x -= parent.scrollLeft;   
            pos.y -= parent.scrollTop;   
            parent = parent.offsetParent;   
        }   
    }   
    else  
    {   
        parent = el.parentNode;    
        while (parent && parent.tagName != 'BODY' && parent.tagName != 'HTML')    
        {   
            pos.x -= parent.scrollLeft;   
            pos.y -= parent.scrollTop;   

            parent = parent.parentNode;   
        }   
    }   
    return pos;
}

var prev_window_name = '';

function OpenWindow(WindowName, element)
{
    var oWindow = window.radopen(null, WindowName);
    
    var pos = GetElementPosition(element);
    var X = pos.x;
    var Y = pos.y;
    
    oWindow.MoveTo(X, Y + element.offsetHeight);
    
    if (prev_window_name != WindowName && prev_window_name != '')
		CloseWindow(prev_window_name);
		
	prev_window_name = WindowName;
}

function OpenWindowWithOffset(WindowName, element, offsetX, offsetY)
{
    var oWindow = window.radopen(null, WindowName);
    
    var pos = GetElementPosition(element);
    var X = pos.x + offsetX;
    var Y = pos.y + offsetY;
    
    oWindow.MoveTo(X, Y + element.offsetHeight);
    
    if (prev_window_name != WindowName && prev_window_name != '')
		CloseWindow(prev_window_name);
		
	prev_window_name = WindowName;
}

function OpenWindowByUrlWithOffset(WindowName, element, windowUrl, offsetX, offsetY)
{
    var oWindow = window.radopen(null, WindowName);
    oWindow.SetUrl(windowUrl);
    
    var pos = GetElementPosition(element);
    var X = pos.x + offsetX;
    var Y = pos.y + offsetY;
    
    oWindow.MoveTo(X, Y + element.offsetHeight);
    
    if (prev_window_name != WindowName && prev_window_name != '')
		CloseWindow(prev_window_name);
		
	prev_window_name = WindowName;
}

function OpenWindowByUrl(WindowName, element, windowUrl)
{
    var oWindow = window.radopen(null, WindowName);
    oWindow.SetUrl(windowUrl);
        
    var pos = GetElementPosition(element);
    var X = pos.x;
    var Y = pos.y;
    
    oWindow.MoveTo(X, Y + element.offsetHeight);
    
    if (prev_window_name != WindowName && prev_window_name != '')
		CloseWindow(prev_window_name);
		
	prev_window_name = WindowName;
}

function CloseWindow (WindowName) 
{
    var oManager = GetRadWindowManager();
	var oWindow = oManager.GetWindowByName(WindowName);
	param_value = '';
	if (oWindow != null ) 
	{
		oWindow.Close();
	}
}