/* add event functions */
function addLoadEvent(func) {
	addEvent(window, "onload", func);
}

/*generic version*/
function addEvent(obj, evt, func) {
	var oldEvt = obj[evt];
	if (typeof oldEvt != 'function') {
		obj[evt] = func;
	} else {
		obj[evt] = function() { oldEvt(); func(); };
	};
}

function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null ){
		node = document;
	}
	if ( tag == null ){
		tag = '*';
	}
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp('(^|\\s)'+searchClass+'(\\s|$)');
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}

function pausecomp(millis){
	var date = new Date();
	var curDate = null;
	do { 
		curDate = new Date(); 
	} while(curDate-date < millis);
} 
