function $(elm) {
	return document.getElementById(elm);
}

function addLoadEvent(func) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') {
		window.onload = func;
	} else {
		window.onload = function() {
			if (oldonload) {
				oldonload();
			}
			func();
		};
	}
}

function getElementsByClassName(strClass, strTag, objContElm) {
	strTag = strTag || "*";
	objContElm = objContElm || document;    
	var objColl = objContElm.getElementsByTagName(strTag);
	if (!objColl.length &&  strTag == "*" &&  objContElm.all)
		objColl = objContElm.all;
	var arr = new Array();                              
	var delim = strClass.indexOf('|') != -1  ? '|' : ' ';   
	var arrClass = strClass.split(delim);    
	for (var i = 0, j = objColl.length; i < j; i++) {                         
		var arrObjClass = objColl[i].className.split(' ');   
		if (delim == ' ' && arrClass.length > arrObjClass.length) continue;
		var c = 0;
		comparisonLoop:
		for (var k = 0, l = arrObjClass.length; k < l; k++) {
			for (var m = 0, n = arrClass.length; m < n; m++) {
				if (arrClass[m] == arrObjClass[k])
					c++;
				if ((delim == '|' && c == 1) || (delim == ' ' && c == arrClass.length)) {
					arr.push(objColl[i]); 
					break comparisonLoop;
				}
			}
		}
	}
	return arr; 
}

function roundNumber(num, dec, pad) {
	var result = "" + Math.round(num*Math.pow(10,dec))/Math.pow(10,dec);
	
	if (pad) {
		var decPoint = result.indexOf(".");
		if (decPoint == -1)
			return result + ".00";
	
		if (result.slice(decPoint).length == dec)
			return result + "0";
	}
	
	return result;
}

