/*
 * Clear Default Text: functions for clearing and replacing default text in
 * <input> elements.
 *
 * by Ross Shannon, http://www.yourhtmlsource.com/
 */

addEvent(window, 'load', init, false);

function init() {
    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/)) {  
            /* Add event handlers */          
            addEvent(theInput, 'focus', clearDefaultText, false);
			addEvent(theInput, 'focus', mainInputStyle, false);
			addEvent(theInput, 'submit', clearDefaultText, false);
            addEvent(theInput, 'blur', replaceDefaultText, false);
            
            /* Save the current value */
            if (theInput.value != '') {
                theInput.defaultText = theInput.value;
            }
        }
    }
	
    var formTextareas = document.getElementsByTagName('textarea');
    for (var i = 0; i < formTextareas.length; i++) {
        var theInput = formTextareas[i];
        
        if (theInput.className.match(/\bcleardefault\b/)) {  
            /* Add event handlers */          
            addEvent(theInput, 'focus', clearDefaultInner, false);
			addEvent(theInput, 'focus', mainInputStyle, false);
            addEvent(theInput, 'submit', clearDefaultInner, false);
            addEvent(theInput, 'blur', replaceDefaultInner, false);
            
            /* Save the current value */
            if (theInput.defaultValue != '') {
                $(theInput).attr("title", $(theInput).val());
            }
        }
    }
	
}

function mainInputStyle(e) {
    var target = window.event ? window.event.srcElement : e ? e.target : null;
    if (!target) return;
    
		target.setAttribute('class', 'fieldText');
}

function clearDefaultText(e) {
    var target = window.event ? window.event.srcElement : e ? e.target : null;
    if (!target) return;
    
    if (target.value == target.defaultText) {
		if (target.title == 'url') {
        	target.value = 'http://';
		} else {
        	target.value = '';
		}
		target.setAttribute('class', 'fieldText');
    }
}

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.setAttribute('class', 'cleardefault');
    }
}

function clearDefaultInner(e) {
    var target = window.event ? window.event.srcElement : e ? e.target : null;
    if (!target) return;
    
    if (target.defaultValue == target.value) {
        //target.defaultValue = '';
		$(target).val('');
		target.setAttribute('class', 'fieldText');
    }
}

function replaceDefaultInner(e) {
    var target = window.event ? window.event.srcElement : e ? e.target : null;
    if (!target) return;
    
    if ($(target).val() == '' && $(target).attr("title")) {
        $(target).val($(target).attr("title"));
		target.setAttribute('class', 'cleardefault');
    }
}
