
function adjustContainerHeight() {
	var elements = [
		{ element:document.getElementById('page__view-shadow'), delta:20 },
		{ element:document.getElementById('page__vs-w'), delta:-20 },
		{ element:document.getElementById('page__vs-e'), delta:-20 },
		{ element:document.getElementById('view'), delta:0 },
		{ element:document.getElementById('v_body'), delta:-42 },
		{ element:document.getElementById('v_body__bg'), delta:-47 },
		{ element:document.getElementById('v_b_sidebar'), delta:-100 },
		{ element:document.getElementById('v_b_sb__bg-w'), delta:-120 },
		{ element:document.getElementById('v_b_sb__bg-center'), delta:-120 },
		{ element:document.getElementById('v_b_sb__bg-e'), delta:-120 }
	];
	
	/*
	 * arbitrary measurement: main.bottom should be padded an extra ~12px from bottom of #view
	 * defined: {mainPaddingToView} = 12
	 * defined: {headerHeight} = header.height + header.paddingTop + header.paddingBottom = 30
	 * defined: {footerHeight} = footer.height + footer.paddingTop + footer.paddingBottom = 55
	 * defined: {viewPaddingToPage} = {headerHeight} + {footerHeight} = 85
	 * view.height should be equal to greatest value among:
	 * 		(window.height - ( {viewPaddingToPage} = 85 ) )
	 * 		(#v_b_main.height + #v_b_main.top + ( #v_body.top + {mainPaddingToView} ) = 54 )
	 * 		(#v_b_sb__container.height + #v_b_sidebar.top + ( #v_body.top + #v_b_sidebar.marginRight ) = 54 )
	 * 		(#page_texture.height + #page_texture.top - {viewPaddingToPage}) = (566 + 57 - 85) = 538
	 */
	var main = document.getElementById('v_b_main'),
		sb = document.getElementById('v_b_sidebar'),
		sbc = document.getElementById('v_b_sb__container');
		_h = [
			windowSize().height - 85,
			main.scrollHeight + main.offsetTop + 54,
			sbc.scrollHeight + sb.offsetTop + 54,
			538
	    ],
		vh = 0;
	for (var i=0; i < _h.length; i++)
		vh = ( _h[i] > vh ) ? _h[i] : vh;
	for (var i=0; i < elements.length; i++) {
		var e = elements[i];
		e.element.style.height = (vh + e.delta) + 'px';
	}
}

function windowSize() {
	var w = 0;
	var h = 0;
	if (!window.innerWidth) { //IE
		if (!(document.documentElement.clientWidth == 0)) { //strict mode
			w = document.documentElement.clientWidth;
			h = document.documentElement.clientHeight;
		} else { //quirks mode
			w = document.body.clientWidth;
			h = document.body.clientHeight;
		}
	} else {
		w = window.innerWidth;
		h = window.innerHeight;
	}
	return {width:w, height:h};
}

