
$JQ = jQuery.noConflict();

/* Define the base LIBRARY namespace */
LIBRARY = {
	getTotalWidth: function(theElement) {
		var totalWidth = theElement.width();
		totalWidth += parseInt(theElement.css('padding-left').replace('px'), '') + parseInt(theElement.css('padding-right').replace('px'), '');
		totalWidth += parseInt(theElement.css('margin-left').replace('px'), '') + parseInt(theElement.css('margin-right').replace('px'), '');
		if (!isNaN(parseInt(theElement.css('borderLeftWidth').replace('px'), '') + parseInt(theElement.css('borderRightWidth').replace('px'), ''))) {
			totalWidth += parseInt(theElement.css('borderLeftWidth').replace('px'), '') + parseInt(theElement.css('borderRightWidth').replace('px'), '');
		}
		return totalWidth;
	},

	getTotalHeight: function(theElement) {
		var totalHeight = theElement.height();
		totalHeight += parseInt(theElement.css('padding-top').replace('px'), '') + parseInt(theElement.css('padding-bottom').replace('px'), '');
		totalHeight += parseInt(theElement.css('margin-top').replace('px'), '') + parseInt(theElement.css('margin-bottom').replace('px'), '');
		if (!isNaN(parseInt(theElement.css('borderTopWidth').replace('px'), '') + parseInt(theElement.css('borderBottomWidth').replace('px'), ''))) {
			totalHeight += parseInt(theElement.css('borderTopWidth').replace('px'), '') + parseInt(theElement.css('borderBottomWidth').replace('px'), '');
		}
		return totalHeight;
	},

	moveHTML: function(theElement, targetElement) {
		var theHTML = LIBRARY.getHTML(theElement);
		theElement.remove();
		targetElement.append(theHTML);
	},
	
	getHTML: function(theElement) {
		var HTML = '<div class="' + theElement.attr('class') + '" id="' + theElement.attr('id') + '">' + theElement.html() + '</div>';
		return HTML;
	},

	setZindex: function(theElement, elementState) {
		theElement.parents().each(function() {
			var eachElement = $JQ(this);
			if (eachElement.css('position') == 'relative') {
				if (elementState == 1) {
					eachElement.css('zIndex','99999');
				} else {
					eachElement.css('zIndex','0');
				}
			}
		});
	}

};
