﻿
$(document).ready(function() {

    
    $("form").each(function(i) {
        var required = $(this).find("input[name='required']");
        
        if(required) {
        
            $(this).validate();
            
            var fields = $(required).val().split('|');
            
            for(var i = 0; i < fields.length; i++) {
                var obj = $("[name='" + fields[i] + "']");
                obj.addClass('required');
            }
            
        }
    });


});

//function init() {
//    var form_array = document.getElementsByTagName('form');
//    for(var i = 0; i < form_array.length; i++) {
//        var required = form_array[i].elements['required'];
//        if(required) {
//            ourForm = form_array[i];
//            if(form_array[i].Submit) {               
//                Event.add(form_array[i].Submit, 'click', checkValues);
//            }
//        }
//    }   
//}

function checkValues(evt) {
    var required = ourForm.elements['required'];
    var fields = required.value.split('|');
    var errors = '';
    
    for(var j = 0; j < fields.length; j++) {
        if(fields[j].length > 0) {
            var field = document.getElementsByName(fields[j]);
            
            var hasValue = false;
            if(field) {
                for(var k = 0; k < field.length; k++) {
                    
                    if(field[k].selectedIndex != null) {
                        if(field[k].options[field[k].selectedIndex].value.length > 0 && field[k].options[field[k].selectedIndex].value != '--') {
                            hasValue = true;
                        }
                    } else if(field[k].value.length > 0) {
                        hasValue = true;
                    }
                }                  
            }
            
            if(!hasValue) {
                errors += fields[j] + ' is required.\r\n';            
            }
        }
    }
    if(errors.length > 0) {
        alert(errors);
    } else {
        ourForm.submit();
    }
    
    return false;
}