/*
 *
 *
 * (c) Dominik Hochreiter
 *
 *
 */


var divEleSubList;
var divEleDeep;

function divEleGetInnerHeight(_id) {

	//reset
	divEleSubList = new Object();
	divEleDeep = -1;

	divElmHeight( document.getElementById(_id), -1 );

	return divElmCalc();
}


function divElmHeight( _elm, _level ) {
	_level++;

	if( _level > divEleDeep ) {
		divEleDeep = _level;
		divEleSubList[_level] = new Array();
	}

	for( var e = 0; e < _elm.childNodes.length; e++ ) {
                if( _elm.childNodes[e].nodeName == 'DIV') {
			divEleSubList[_level].push( _elm.childNodes[e] );
			divElmHeight( _elm.childNodes[e], _level );
		}
	}
	_level--;
}


function divElmCalc () {
	//alert("Found Level Deep:"+divEleDeep);

	var hightByLevel = new Array(divEleDeep);
	var maxHeight = 0;
	var maxHeightLevel = 0;

	for( var e = 0; e <= divEleDeep; e++ ) {
		hightByLevel[e] = 0;

		//alert("Level "+e+":"+divEleSubList[e].length );
		
		for( var d = 0; d < divEleSubList[e].length; d++ ) {
			//alert("Level Style "+e+":"+divEleSubList[e][d].offsetHeight);
			hightByLevel[e] += divEleSubList[e][d].offsetHeight;
		}

		//alert("Level height "+e+":"+hightByLevel[e] );
		if( hightByLevel[e] > maxHeight && e > maxHeightLevel) {
			maxHeight = hightByLevel[e];
			maxHeightLevel = e;
		}
	}
	return maxHeight;
}






