/**
 * jQuery Default Value Plugin v1.0
 * Progressive enhancement technique for inital input field values
 *
 * The MIT License
 * 
 * Copyright (c) 2007 Paul Campbell (pauljamescampbell.co.uk)
 * 
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 * 
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 * 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 *
 * @param		String
 * @return		Array
 */
(function($) {
String.prototype.trim = function() {
return this.replace(/^\s+|\s+$/g,"");
}
$.fn.defaultvalue = function(klass,text) {
return this.each(function() {
//Make sure we’re dealing with text-based form fields
if (this.type != "text" && this.type != "password" && this.type != "textarea") {
return;
}

//Store field reference
var fld_current = this;
var fldVal = this.value.toLowerCase().trim();
var textVal = text.toLowerCase().trim();

//Set value initially if none are specified
if (fldVal != textVal || fldVal == '') {
$(this).addClass(klass);
this.value = text;
}

//Remove values on focus
$(this).focus(function() {
var fldVal = this.value.toLowerCase().trim();
if (fldVal == textVal || fldVal == '') {
this.value = '';
$(this).removeClass(klass);
}
});

//Place values back on blur
$(this).blur(function() {
var fldVal = this.value.toLowerCase().trim();
if (fldVal == textVal || fldVal == '') {
$(this).addClass(klass);
this.value = text;
}
});

/*Capture parent form submission
//Remove field values that are still default
$(this).parents("form").each(function() {
	//Bind parent form submit
	$(this).submit(function() {
		if (fld_current.value.toLowerCase().trim() == textVal) {
			fld_current.value = '';
		}
	});
});*/
});
};
})(jQuery);
