/*****************************************************************************************************
* Easy Javascript Validation by Daniel Boorn
* Copyright 2006, All Rights reserved by Daniel Boorn
* Contact: daniel.boorn@gmail.com - wwww.dboorn.com
* In any form element add the following form attributes to validate
* required ="yes"
* validate = { "int", "float", "text", "email" }
* message = "Error Message for Element"
* Example: <input type="text" validate="int" message="Please enter valid zip code" name="zip">
*
* It is required that you add the following to any submit button
*     onClick="validate(this.form); return document.formSubmit;"
******************************************************************************************************/

        function validate(form){

                var error = "";
                //for each form element
                for(var i=0; i<form.length; i++){
                        var element = form[i];
                        //if required
                        if(element.getAttribute("required") == "yes"){
                                //if form element if empty
                                if(!valid(element.value,element.getAttribute("validate"),element))
                                        error += element.getAttribute("message") + "\r\n";
                        }
                }
                if(error != ""){
                        alert(error);
                        document.formSubmit = false;
                }
                else
                        document.formSubmit = true;
        }

        function valid(value,type,element){
                if(value == "")
                        return false;

                switch(type){
                        case "int":
                                if(isNaN(parseInt(value)))
                                        return false;
                                break;
                        case "float":
                                if(isNaN(parseFloat(value)))
                                        return false;
                                break;
                        case "email":
                                var p = value.indexOf('@');
                                if(p<1 || p==(value.length-1))
                                        return false;
                                break;
                        case "checked":
                                if(!element.checked)
                                        return false;
                                break;
                        default://string
                                break;
                }
                return true;
        }

