/*
Uses Mochikit, so mochikit needs to be included before this
*/

function getHeight(e) {
	if (e.offsetHeight) {
		return e.offsetHeight;
	} else if (e.pixelHeight) {
		return e.pixelHeight;
	}
}


function getViewportSize() {
    var size = [0, 0];
    if (typeof window.innerWidth != 'undefined') {
     size = [ window.innerWidth, window.innerHeight ];
    } else if (typeof document.documentElement != 'undefined' &&
             typeof document.documentElement.clientWidth != 'undefined' &&
             document.documentElement.clientWidth != 0) {
     size = [ document.documentElement.clientWidth, document.documentElement.clientHeight ];
    } else {
     size = [ document.getElementsByTagName('body')[0].clientWidth,
              document.getElementsByTagName('body')[0].clientHeight ];
    }
   
    return size;   
}

function matchColumns() {
	contDivs = getElementsByTagAndClassName('div', 'matching-column');
	maxHeight=0;
	for (i=0;i<contDivs.length;i++) {
		maxHeight=Math.max(maxHeight,getHeight(contDivs[i]));
        tallestDiv=contDivs[i];
	}

	for (i=0;i<contDivs.length;i++) {
            if (contDivs[i].id != 'rightcol') {
			    contDivs[i].style.height = (maxHeight+100)+'px';
            }
	}
}

function resize() {
    var currentSize = getViewportSize();
    if (currentSize[0] != g_prevSize[0] || currentSize[1] != g_prevSize[1]) {
        matchColumns();
        g_prevSize = currentSize;
    }
}

function init() {
    matchColumns();
    window.g_prevSize = getViewportSize();
    setInterval(resize, 200);
}

addLoadEvent(init);

