﻿$(document).ready(function() {

    $('#submit').click(function() { saveForm(); });
    $('#reset').click(function() { resetForm(); });


});

function resetForm() { 
    var fields = $('input, select');

    for (var i = 0; i < fields.length; i++) {
        
        $(fields[i]).attr('checked', false)        
        $(fields[i]).val('');
        $(fields[i]).css({ 'background-color': '#FFF' });
    }

    $('#formInvalid').html('');
}

function saveForm() {

    var fields = $('input, select');
    var formIsValid = true;
    var formInvalidText = "";
    var dataObj = {};

    for (var i = 0; i < fields.length; i++) {
        
        var id = $(fields[i]).attr('id');

        if (fields[i].type == 'checkbox') {
            if ($(fields[i]).attr('checked')) {
                var value = 'Yes';
            }
            else {
                var value = 'No';
            }
        }
        else {
            var value = $(fields[i]).val();
        }
        
        if (value == '--Please Select--') {
            value = '';
        }
        
        if ($(fields[i]).attr('required') == 'true' && value == '') {
            $(fields[i]).css({ 'background-color': '#FFFF99' });
            formIsValid = false;
            var label = $(fields[i]).attr('label');         
            formInvalidText += "*" + label + " is required.<br />";
        }

        if ($(fields[i]).attr('required') == 'true' && value != '') {
            $(fields[i]).css({ 'background-color': 'white' });
        }

        if (id == "PhoneNumber") {
            var regex = /[A-Z|a-z]/;
            if (regex.test(value)) {
                $(fields[i]).css({ 'background-color': '#FFFF99' });
                formIsValid = false;
                var label = $(fields[i]).attr('label');
                formInvalidText += "*" + label + " cannot contain alpha characters.<br />";
            }
        }

        if (id == "Email" && value.indexOf("@") < 0) {
            $(fields[i]).css({ 'background-color': '#FFFF99' });
            formIsValid = false;
            var label = $(fields[i]).attr('label');
            formInvalidText += "*" + label + " is not a valid email address.<br />";
        }
        
            dataObj[id] = value;
    }

    if (formIsValid) {
        $.ajax({
            beforeSend: function() {
                common.showAjaxLoader($(".commonContent"));
            },
            url: wsod_getPath() + "Contact/SubmitForm",
            data: dataObj,
            success: function(data) {
                common.hideAjaxLoader($(".commonContent"));
                $(".commonContent").html(data);
            },
            error: function() {
                common.hideAjaxLoader($(".commonContent"));
            }
        });
    }
    else {
        $('#formInvalid').html(formInvalidText);
    }
}
