
function toggleClass ( object, className, state ) {
	if ( object == undefined ) {
		return true;
	}
	
	// Current class
	var realClass = object.className == undefined ? "" : object.className; 
	
	// New class
	var newClass = ' ' + realClass + ' '; 
	newClass = newClass.replace(' ' + className + ' ', ' ');
	if ( state == 'on' ) {
		// Always add class.
		newClass = newClass + ' ' + className;
	} else if (state == 'off') {
		// Do nothing, already removed.
	} else {
		// toggles..
		if ( newClass == ' ' + realClass + ' ' ) {
			newClass = newClass + ' ' + className;
		}
	}
	
	// Set to new class
	object.className = newClass;
}

function hrefToOnClick ( anchor, action ) {
	anchor.href = "javascript: undefined;";
	anchor.onclick = action;
}

/**
 * Safari doesn't seem to always layer things correctly on top of flash unless you "refresh" it.
 */
function refresh(element) {
	if ( element.originalZIndex == undefined )
		element.originalZIndex = element.style.zIndex;		// Store z-index
	if ( element.style.zIndex == element.originalZIndex )
		element.style.zIndex = element.originalZIndex +1;	// Add 1 to z-index
	else
		element.style.zIndex = element.originalZIndex;		// Back to original z-index
}