function isDefined(object, variable) {
	return (typeof(eval(object)[variable]) != 'undefined');
}

function isArray(a) {
    return isObject(a) && a.constructor == Array;
}

function isObject(a) {
    return (a && typeof a == 'object') || isFunction(a);
}

function isFunction(a) {
    return typeof a == 'function';
}

function isClass(element, sClass) { 
	sClassName = element.className;
	re = new RegExp(sClass + "( *|,?|,? *| *,? *| *,?|$)");//changed regex from "( |$|,|, | ,| , )"
	if (!sClassName) return false;
	return re.test(sClassName); 
}
var loadHandlers = new Array();

function addLoadHandler(handler, params){
	if (!isArray(params)) {
		params = new Array(params);
	}
	loadHandlers[loadHandlers.length]=new Array(handler, params);
}

function onLoadHandler(){		
	var eString = "";
	for(f in loadHandlers){
		eString = "loadHandlers[f][0](";
		if (loadHandlers[f]){
			var params = loadHandlers[f][1];
			for(i = 0; limit=params.length-1, i<=limit; i++){
				eString += params[i];
				if (i < limit){
					eString += ", ";
				}
			}
		}
		eString += ");";
		eval(eString);
	}
	return false;
}

var lh_oldonload = window.onload;

if (typeof window.onload == 'function') {
	addLoadHandler(lh_oldonload, "");
}

if (window.addEventListener){
	window.addEventListener("load", onLoadHandler, false);
} else if(window.attachEvent){
	window.attachEvent("onload", onLoadHandler);
} else {
	window.onload = onLoadHandler;
}
