function setPosition(objToSet, objToSetOpener, userLeft, userTop)
{
	var obj = document.getElementById(objToSet);
	var objOpener = document.getElementById(objToSetOpener);
	var left = 0;
	var top = 0;
	var currentNode = objOpener;
	
	while(currentNode.offsetParent !== null)
	{
   	   left += currentNode.offsetLeft;
	   top += currentNode.offsetTop;
   	   currentNode = currentNode.offsetParent;
   	}
	
	left += userLeft;
	top += userTop;
	
	obj.style.left = left + "px";
	obj.style.top = top + "px";
}

function fade(id, opacStart, opacEnd, millisec)
{ 
    //speed for each frame 
    var speed = Math.round(millisec / 100); 
    var timer = 0; 

    //determine the direction for the blending, if start and end are the same nothing happens 
    if(opacStart > opacEnd)
	{
        for(i = opacStart; i >= opacEnd; i--)
		{
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
            timer++;
			
        }
    }
	else if(opacStart < opacEnd)
	{ 
        for(i = opacStart; i <= opacEnd; i++) 
        {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
            timer++; 
        }
    } 
} 

//change the opacity for different browsers 
function changeOpac(opacity, id)
{ 
    var object = document.getElementById(id).style; 
    object.opacity = (opacity / 100); 
    object.MozOpacity = (opacity / 100); 
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
	if(opacity === 0)
	{
		document.getElementById(id).style.visibility = "hidden";
	}
	if(opacity > 0)
	{
		document.getElementById(id).style.visibility = "visible";
	}
}