function OpenURL(url, target) {
	if (arguments.length == 2 && target.length > 0) {
		window.open(url,target);
	} else {
		document.location.href = url;
	}
}
function SwapStyle(o, classname) {
	o.className = classname;
}

function ClearInput(o,n) {
	if (o.value == n)
		o.value = "";
}
function RestoreInput(o,n) {
	if (o.value == "")
		o.value = n;
}

function IsUndefined(v) {
	return typeof v == 'undefined';
}

function GetElement(element) {
	if ( typeof element != "object" ) {
		if ( typeof element == "string" ) {
			if ( !isBrowserCapable() )
				throw 'cannot get element: unsupported DOM';
				
			element = document.getElementById(element);
			if ( element === null ) 
				throw 'cannot get element: element does not exist';

		} else {
			throw 'cannot get element: invalid datatype';
		}
	}
	return element;

}

function GetFormElement( elementName ) {
	for( var i=0; i < document.forms.length; i++ ) {
		var theForm = document.forms[i];
		if( typeof(theForm[elementName]) != "undefined" ) {
			return theForm[elementName];
		}
	}
	return null;
}

function SetHiddenFieldValue(fieldID, value)
{
	var elem = GetFormElement(fieldID);
	if ( elem != null )
		elem.value = value;
}