/*
var formValdation = Class.create();
formValdation.prototype = {
	
	formName: "",
	form: null,
	elements: null,
	errFlag: false,
	options: null,
		
	initialize: function(formName, options){	
		this.formName = formName;
		this.options = options;
		document.observe("dom:loaded", this.setForm.bind(this));
	},
	
	setForm: function(){
		this.form = $(this.formName);
		Event.observe(this.form, "submit", this.onSubmit.bind(this), false);
	},
	
	onSubmit: function(event){
		if(!this.validate())
			Event.stop(event);
	},
	
	trim: function (value) {
		value = value.replace(/^\s+/,'');
		value = value.replace(/\s+$/,'');
		return value;		
	},
	
	validate: function(){
		this.errFlag = false;
		this.elements = Form.getElements(this.form);
		for(var i=0;i < this.elements.length;i++){
			required = this.elements[i].getAttribute("required");
			if(required){
				switch (required) {				
				case "email":
					this.testEmail(this.elements[i])
					break;
				case "url":
					this.testUrl(this.elements[i])
					break;
				case "number":
					this.testNumber(this.elements[i])
					break;
				default:
					this.testNotEmpty(this.elements[i]);
				}
			}
		}
		return !this.errFlag; 
	},

	testEmail: function(element){
		value = $F(element);
		if(this.testNotEmpty(element) && /\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/.test(value)){
			this.setStatus(element, true);
			return true;			
		}else{
			this.setStatus(element, false);
			return false;			
		}
	},

	testUrl: function(element){
		value = $F(element);
		if(this.testNotEmpty(element) && /^(http|https|ftp):\/\/(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)(:(\d+))?\/?/i.test(value)){
			this.setStatus(element, true);
			return true;			
		}else{
			this.setStatus(element, false);
			return false;			
		}
	},

	testNumber: function(element){
		value = $F(element);
		if(this.testNotEmpty(element) && (!isNaN(value) && !/^\s+$/.test(value))){
			this.setStatus(element, true);
			return true;			
		}else{
			this.setStatus(element, false);
			return false;			
		}
	},
	
	testNotEmpty: function(element){
		if(this.trim($F(element)) != ""){
			this.setStatus(element, true);
			return true;
		}else{
			this.setStatus(element, false);
			return false;
		}
	},
	
	setStatus: function(element, status){
		if(status){
			if($(element.getAttribute("id") + "-validation-failed"))
				$(element.getAttribute("id") + "-validation-failed").hide();			
			element.removeClassName("validation-failed");
			element.addClassName("validation-passed");
		}else{
			this.errFlag = true;
			if($(element.getAttribute("id") + "-validation-failed"))
				$(element.getAttribute("id") + "-validation-failed").show();
			element.removeClassName("validation-passed");
			element.addClassName("validation-failed");
		}
	},
	
	submit: function(){
		if(this.validate()){
			this.form.submit();
		}
			
	}
};
*/


