document.write("<style type='text/css'><!-- *.shown {} *.hidden { display:none; } --></style>");

function HasClass(elem, strClass)
{
	return new RegExp("\\b" + strClass + "\\b").test(elem.className);
}

function AddClass(elem, strClass)
{
	if(!HasClass(elem, strClass)) {
		elem.className+=elem.className ? " " + strClass : strClass;
	}
}

function RemoveClass(elem, strClass)
{
	var strReplace=elem.className.match(" " + strClass) ? " " + strClass : strClass;
	elem.className=elem.className.replace(strReplace, "");
}

function InitializeInputHints(formid)
{
	var form=document.getElementById(formid);
	if(form) {
		form.onsubmit=function() { ClearInputHints(this); return true; }
		var inputs=form.getElementsByTagName("input");
		for(var i=0; i<inputs.length; ++i) {
			var input=inputs[i];
			if(input.type=="text") {
				ToggleInputHint(input);
				input.onfocus=function() { ToggleInputHint(this); }
				input.onblur=function() { ToggleInputHint(this); }
			}
		}
	}
}

function ClearInputHints(form)
{
	var inputs=form.getElementsByTagName("input");
	for(var i=0; i<inputs.length; ++i) {
		var input=inputs[i];
		if(input.type=="text") {
			if(input.value==input.title) {
				input.value="";
			}
		}
	}
}

function ToggleInputHint(elem)
{
	if(elem.value==elem.title) {
		elem.value="";
		RemoveClass(elem, "hint");
	} else if(elem.value=="") {
		elem.value=elem.title;
		AddClass(elem, "hint");
	}
}

function SwitchDisplay(elemid)
{
    var elem=document.getElementById(elemid);
    if(elem) {
        if(elem.className=="hidden") {
            elem.className="shown";
        } else {
            elem.className="hidden";
        }
    }
}

function Popup(url, width, height)
{
    var win=window.open(url, 'popup', 'resizable=1,width=' + width + ',height=' + height + ',left=200,top=200,scrollbars=0,status=0,directories=0,location=0,toolbar=0,menubar=0');
}