SignupForm = new Class({
	
	 Implements:[Options, Events],
	 options: {
		focusFields: false
	},
	
	initialize: function(form, options){
		
		 this.setOptions(options);
		 this.validator = new FormValidator.Inline(form,{
		 	errorPrefix: "",
		 	evaluateFieldsOnBlur: false,
		 	evaluateFieldsOnChange: false,
		 	scrollToErrorsOnSubmit: false
		 });
		 if (this.options.focusFields) {
		 	this.customRequired();
		 	this.initFields();
		 }
	},
	
	customRequired:function() {
		this.validator.add('not-default', {
    		errorMsg: 'Default values are not allowed.',
    		test: (function(element,props){
        		var evalue = element.get('value');
        		var eid = element.get('id');
        		var checkit = false;
        		this.options.focusFields.each( function(el,i) {
        			if (el[0] == eid) {
        				 checkit = el;
        			}
        		})
        		if (checkit) {
        			return checkit[1] != evalue;
        		}
        		return false
    		}).bind(this)
		});
	},
	
	initFields: function() {
		
		this.options.focusFields.each( function(field,index) {
			$(field[0]).value = field[1];
			$(field[0]).addEvent('focus', function() {
				if (this.value == field[1]) { this.value = ""; }
			});
			$(field[0]).addEvent('blur', function() {
				if (this.value.trim() == "") { this.value = field[1]; }
			});
		}, this);
	}
});