/*
* Clear Default Text: functions for clearing and replacing default text in
* <input> elements.
*/

addEvent(window, 'load', initClearDefault, false);

function initClearDefault() {

	var formInputs = document.getElementsByTagName('input');
	for (var i = 0; i < formInputs.length; i++) {
		var theInput = formInputs[i];
		if (theInput.type == 'text' && theInput.className.match(/\bcleardefault\b/)) {
			processInputElement(theInput);
		}
	}
	
	var formTextAreas = document.getElementsByTagName('textarea');
	for (var i = 0; i < formTextAreas.length; i++) {
		var theInput = formTextAreas[i];
		if (theInput.className.match(/\bcleardefault\b/)) {
			processInputElement(theInput);
		}
	}
}

function processInputElement(theInput) {

	/* Add event handlers */
	addEvent(theInput, 'focus', clearDefaultText, false);
	addEvent(theInput, 'blur', replaceDefaultText, false);

	/* Save the current value */
	if (theInput.value != '') {
		theInput.defaultText = theInput.value;
	}
}

function clearDefaultText(e) {
	var target = window.event ? window.event.srcElement : e ? e.target : null;
	if (!target) return;

	if (target.value == target.defaultText) {
		target.value = '';
	}

	target.style.color = '#000000';
}

function replaceDefaultText(e) {
	var target = window.event ? window.event.srcElement : e ? e.target : null;
	if (!target) return;

	if (target.value == '' && target.defaultText) {
		target.value = target.defaultText;
		target.style.color = '#cccccc';
	}
}