function fnGetDocHeight(doc)
{
    var docHt = 0, sh, oh;
    if (doc.height) docHt = doc.height;
    else if (doc.body)
    {
        if (doc.body.scrollHeight) docHt = sh = doc.body.scrollHeight;
        if (doc.body.offsetHeight) docHt = oh = doc.body.offsetHeight;
        if (sh && oh) docHt = Math.max(sh, oh);
    }

    return docHt;
}

function fnSetIFrameHeight(iframeName)
{
    var iframeWin = window.frames[iframeName];
    var iframeEl = document.getElementById? document.getElementById(iframeName): document.all? document.all[iframeName]: null;
    if ( iframeEl && iframeWin )
    {
        iframeEl.style.height = "auto"; // helps resize (for some) if new doc shorter than previous
        var docHt = fnGetDocHeight(iframeWin.document);
        // need to add to height to be sure it will all show
        if (docHt)
        {
            if (docHt < 500)
            {
                iframeEl.style.height = (500 - docHt) + docHt;
            }
            else
            {
                iframeEl.style.height = docHt + 30;
            }
        }
    }
}