
/**
* This script hides the selectboxes if those would hide the footer
*/

function getMaxOffsetHeight()
{
	return ( 0 - footerstrip.offsetHeight +
		( document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight ) +
		( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) )
}


function reDisplaySelectboxes()
{
    try {
        var maxOffsetHeight = getMaxOffsetHeight();
        var selects = document.body.getElementsByTagName("select");
        for (i=0; i<selects.length; i++)
        {
            var selectBox = selects[i];
            if (selectBox.className.indexOf("hidden-selectbox") != -1)
            {
                selectBox.style.visibility = "hidden";
            }
            else
            {
                var selBoxHeight = selectBox.offsetHeight;
                var selBoxTop = selectBox.offsetTop;
                var selBoxWidth = selectBox.offsetWidth;
                var selBoxLeft = selectBox.offsetLeft;
                var objectForTopCalculation = selectBox;
                while(objectForTopCalculation.offsetParent)
                {
                    objectForTopCalculation = objectForTopCalculation.offsetParent;
                    selBoxTop += objectForTopCalculation.offsetTop;
                    selBoxLeft += objectForTopCalculation.offsetLeft;
                }
                var problemWithAlertLayer = false;
                if (window.conflictWithAlertLayer)
                {
                    problemWithAlertLayer = conflictWithAlertLayer(selBoxLeft, selBoxWidth, selBoxTop, selBoxHeight);
                }
                selectBox.style.visibility = (selBoxTop + selBoxHeight  < maxOffsetHeight && !problemWithAlertLayer) ? "visible" : "hidden";
            }
        }
    } catch(err) {
    }
}

window.onresize = reDisplaySelectboxes;
window.onscroll = reDisplaySelectboxes;
reDisplaySelectboxes();
