var toBeFloatedElementClass = '_float';
var toBePutUnderElementClass = '_floatTP';
var floatingElementClass = 'floatContentDiv';
var shadowElementClass = 'wBodyShadow';
var originalElementClass = 'wContentDiv';

Event.observe(window,'load',function(){
	floatElements(toBeFloatedElementClass, toBePutUnderElementClass, floatingElementClass);
});

function floatElements(toBeFloatedClass, underClass, floatingClass ) {
	var elements = $$('.' + toBeFloatedClass);
	if (elements) {
		for (var i = 0; i<elements.length; i++) {
			floatIt(elements[i], underClass, floatingClass);
		}
	}
}
/*
function floatIt(element, underClass, floatingClass) {
			element.setStyle({'height': element.getHeight() + 'px', 'padding': '0px'});
			
			var floatElement = document.createElement('div');
			Element.addClassName(floatElement, floatingClass);
			floatElement.innerHTML = element.innerHTML.stripScripts();
			element.innerHTML = '';
			
			if (underClass) {
				theNode = element.parentNode;
				while(!Element.hasClassName(theNode,underClass)) {
					theNode = theNode.parentNode;
				}
				theNode.insert(floatElement);

			} else {			
			
			
			
				element.parentNode.insertBefore( floatElement, element.nextSibling );
//			element.appendChild( floatElement);
			}
}		
*/

function floatIt(element, underClass, floatingClass) {
	var eh = element.getHeight();
// insert bodyshadow
	var shadowElement = new Element('div',{'class':shadowElementClass,'style':'padding:0px;height:'+eh+'px'});	
	element.parentNode.insertBefore(shadowElement, element);
	var baseElement = new Element('div',{'class':floatingElementClass,'style':'padding:0px;height:'+eh+'px'});
//	element.className = floatingClass + ' clearfix';
	element.parentNode.insertBefore(baseElement, element);

	
}
function reConfigureFloatElement(div) {
	// Recal widget's apparent height
	var floatElement = $$('#' +div + ' .' + floatingElementClass)[0];
	var shadowElement = $$('#' +div + ' .' + shadowElementClass)[0]; 
	var oriElement = $$('#' +div + ' .wContentDiv')[0];
	if (oriElement != undefined) {
		if (floatElement != undefined) {
//		oriElement.setStyle({'height': floatElement.getHeight() + 'px', 'padding': '0px'});
			floatElement.setStyle({'height': oriElement.getHeight() + 'px', 'padding': '0px'});
		}
		if (shadowElement != undefined) {
			shadowElement.setStyle({'height': oriElement.getHeight() + 'px', 'padding': '0px'});
		}
	}
}
