//Get element by id shorthand
function $(element) {
	var elementobj = document.getElementById(element);
	return elementobj;
}

//List variables in array
function listelement(ele) {
	var data = "";
	for (i in ele) {
		data += i + " => " + ele[i] + "\n";
	}
	alert(data);
}

//Init 'Unobtrusive' JavaScript */
//addEvent(window, 'load', function() {
//});

//Add onload event handler
//addEvent(window, 'load', aaaa);
function addEvent(obj, evType, fn){
	if (obj.addEventListener){
		obj.addEventListener(evType, fn, false);
		return true;
	} else if (obj.attachEvent){
		var r = obj.attachEvent("on"+evType, fn);
		return r;
	} else {
		return false;
	}
}

//Get selected radio id
function radiogetselected(radioname) {

	var chkboxgrpele = document.getElementsByName(radioname);
	var chkboxtotal = chkboxgrpele.length;
	for (i=0; i<chkboxtotal; i++) {
		if (chkboxgrpele[i].checked == true) {
			return chkboxgrpele[i].value;
		}
	}
	return false;

}

//Select specified radio by value
function radioselect(radioname, radiovalue) {

	var chkboxgrpele = document.getElementsByName(radioname);
	var chkboxtotal = chkboxgrpele.length;
	for (i=0; i<chkboxtotal; i++) {
		if (chkboxgrpele[i].value == radiovalue) {
			chkboxgrpele[i].checked = true;
			return true;
		} else {
			chkboxgrpele[i].checked = false;
		}
	}

	return false;

}

//Class add / remove
function classaddremove(ele, classname, status) {

	//If remove class
	if (status == false) {

		//List of all classes
		var classnameexisting = ele.className;
		var classes = classnameexisting.split(" ");

		var classesstring = "";

		for (var classnameitem in classes) {

			if (classes[classnameitem] != classname) {

				var spacer = "";
				if (classesstring != "") {
					spacer = " ";
				}

				classesstring += spacer + classes[classnameitem];

			}

		}

		ele.className = classesstring;

	} else {

		//Add class
		var spacer = "";
		if (ele.className != "") {
			spacer += " ";
		}

		//Append class to existing list
		ele.className += spacer + classname;

	}

}

//Check if an item in an array
function in_array(the_needle, the_haystack) {
	var the_hay = the_haystack.toString();
	if(the_hay == ''){
		return false;
	}
	var the_pattern = new RegExp(the_needle, 'g');
	var matched = the_pattern.test(the_haystack);
	return matched;
}

