/**
* FRONT END Common JS
* should be minified, can't combine with YUI though as backend has different common
* @version 0.9 2009-03-06
*/

$E.onDOMReady(function() {
	
	//Hide Elements
	var hide = $D.getElementsByClassName('toHide');
	$D.replaceClass(hide, 'toHide', 'hidden');
	
	//Reveal .toShow elements by removing invisible class
	var toShow = $D.getElementsByClassName('toShow', null, 'content');
	$D.removeClass(toShow, 'invisible');
	
	//Extra-info togglers
	//clicker class of .infoToggler with id of toggle_{targetID}
	//target element to be {targetID}
	$E.on(
		$D.getElementsByClassName('infoToggler', 'p', 'content'),
		'click',
		function(ev) {
			var id = $E.getTarget(ev).id;
			var tgtID = id.match(/^toggle\_(.+)$/);
			if(!tgtID[1]) return;
			
			//Target Element
			var tgt = $(tgtID[1]);
			
			if($D.hasClass(tgt, 'hidden')) $D.removeClass(tgt, 'hidden');
			else $D.addClass(tgt, 'hidden');
			
			window.scrollTo(0, $D.getY(tgt)-20);
		}
	);
});

//Wrapper to create DOM elements
function mkEl(tagName) {
	return document.createElement(tagName);
}
