// JavaScript for forms

function styleFormElements() {
	// Runs onload.
	var inputs = document.getElementsByTagName('input');
	for( i=0; i<inputs.length; i++ ) {
		if( inputs[i].type == 'submit' && inputs[i].className == 'button' ) {
			var a = document.createElement('A');
			a.className = 'button';
			addEvent(a,'click',submitForm);
			var text = document.createTextNode(inputs[i].value);
			a.appendChild(text);
			inputs[i].parentNode.replaceChild(a,inputs[i]);
		}
		else if( inputs[i].type == 'text' && elementHasClassName(inputs[i],'noedit') ) {
			addEvent(inputs[i],'focus',loseFocus);
		}
	}
	var textareas = document.getElementsByTagName('textarea');
	for( i=0; i<textareas.length; i++ ) {
		if( elementHasClassName(textareas[i],'noedit') ) {
			addEvent(textareas[i],'focus',loseFocus);
		}
	}
}

function submitForm(evt) {
	var node = findEventOwner(evt);
	while( node.tagName != 'FORM' ) {
		node = node.parentNode;
	}
	node.submit();
}

function clearDefaults() {
	var inputs = document.getElementsByTagName('input');
	for( i=0; i<inputs.length; i++ ) {
		if( elementHasClassName(inputs[i],'clearDefault') ) {
			addEvent(inputs[i],'focus',clearInput);	   
		}
	}
}

function clearInput(evt) {
	var node = findEventOwner(evt);
	if( node.nodeName == 'INPUT' ) {
		node.value = '';
		removeEvent(node,'focus',clearInput); // do this only for default; then preserve user input
	}
	return;
}

function loseFocus(evt) {
	var node = findEventOwner(evt);
	node.blur();
}
 