﻿(function($) {
    function getBoundingBox(element) {
        var minLeft = 999999;
        var minTop = 999999;
        var maxRight = -1;
        var maxBottom = -1;

        $(element).children().each(function() {
            var o = $(this).offset();
            var w = $(this).outerWidth();
            var h = $(this).outerHeight();
            if (o.left < minLeft) minLeft = o.left;
            if (o.top < minTop) minTop = o.top;
            if (o.left + w > maxRight) maxRight = o.left + w;
            if (o.top + h > maxBottom) maxBottom = o.top + h;
        });

        return {
            left: minLeft,
            right: maxRight,
            top: minTop,
            bottom: maxBottom,
            width: maxRight - minLeft,
            height: maxBottom - minTop
        };
    }

    function getDimensions(element) {
        var e = $(element);
        var o = e.offset();

        return {
            left: o.left,
            right: o.left + e.outerWidth(),
            top: o.top,
            bottom: o.top + e.outerHeight(),
            width: e.outerWidth(),
            height: e.outerHeight(),
            innerWidth: e.width(),
            innerHeight: e.height()
        };
    }

    $(window).load(function() {
    // hide right area if there's no content (for admins)
        /*
        var rightContentPane = $("div.RightBlurbContent");
        if (rightContentPane.find("div").length == 0)
            $("#RightBlurb").hide();
            */
            
        // push down the footer based on left/right area hightsz
        var leftbox = getDimensions("#ContentArea");
        var rightbox = getDimensions("#RightArea");

        var diff = rightbox.bottom - (leftbox.bottom + 64);
        if (diff < 0 && false)
            $("#RightArea").height(rightbox.innerHeight - diff);

        $("#TopArea").height(
	    	getBoundingBox("#TopArea").height
    	);

    });
})(jQuery);

