//
// addLoadEvent()
// Adds event to window.onload without overwriting currently assigned onload functions.
// Function found at Simon Willison's weblog - http://simon.incutio.com/
//

function addLoadEvent(func)
{	
	var oldonload = window.onload;
	if (typeof window.onload != 'function'){
    	window.onload = func;
	} else {
		window.onload = function(){
		oldonload();
		func();
		}
	}
}

//
// jsCSS()
// Swaps, adds to, removes from, and checks for the existance of a string withing an elements class
// parameters:
//			a - "swap" , "add" , "remove" , "check"
//			o - the element to apply previous to
//			c1 - classname 1
//			c2 - classname 2
//
function jsCSS(a,o,c1,c2)
{
	switch (a){
		case 'swap':
			if(jsCSS('check',o,c1)){o.className = o.className.replace(c1,c2);}
			else{o.className = o.className.replace(c2,c1);}
		break;
		case 'add':
			if(!jsCSS('check',o,c1)){o.className+=o.className?' '+c1:c1;}
		break;
		case 'remove':
			var rep=o.className.match(' '+c1)?' '+c1:c1;
			o.className=o.className.replace(rep,'');
		break;
		case 'check':
			return new RegExp('\\b'+c1+'\\b').test(o.className)
		break;
	}
}
