/**
 * Some JavaScript functions to improve look and feel
 *
 * <p>Without this script the page is still functional</p>
 *
 * @package Yord_nl
 * @author Marc Kortleven <mkortleven@refdag.nl>
 * @version $Id: default_bottom.js,v 1.3 2004/09/03 14:38:19 mkortleven Exp $
 */

/**
 * determine px/em ratio
 */
myBottomEm = 2.5;
obj = document.getElementById('site_frame_div_id');
if (obj && obj.offsetWidth) {
    try {
        if (siteFrameEmWidth) {
            pxEmRatio = obj.offsetWidth / siteFrameEmWidth;
        } else {
            pxEmRatio = 10.678788;
        }
    } catch (err) {
        pxEmRatio = 10.678788;
    }
} else {
    pxEmRatio = 10.678788;
}

/**
 * Returns height needed to fit the given element
 *
 * @param string theId of the element
 * @param int theMaxHeight current max height
 * @return int height of the element or max height if greater
 */
function NeededHeightGet(theId, theMaxHeight)
{
    var obj = document.getElementById(theId);
    if (obj && obj.offsetHeight) {
        myObjHeight = obj.offsetTop + obj.offsetHeight + myBottomEm * pxEmRatio;
        if (myObjHeight > theMaxHeight) {
            return myObjHeight;
        }
    }
    return theMaxHeight;
}

/**
 * Adjust height
 */
function HeightAdjust()
{
    myNeededHeight = 0;
    myNeededHeight = NeededHeightGet('left_frame_div_id', myNeededHeight);
    myNeededHeight = NeededHeightGet('content_frame_div_id', myNeededHeight);
    myNeededHeight = NeededHeightGet('article_frame_div_id', myNeededHeight);
    myNeededHeight = NeededHeightGet('right_frame_div_id', myNeededHeight);
    if (myNeededHeight > 0) {
        obj = document.getElementById('main_frame_div_id');
        if (obj.offsetHeight < myNeededHeight) {
            obj.style.height = (myNeededHeight / pxEmRatio) + 'em';
        }
    }
}
