﻿// Form validation via jQuery
//load required libraries
  
$(function(){
    //Contact Us validation
  $('#SubmitForm').click(function(){  
   sendOrder();
    
   });  
 jQuery.validator.addMethod("phoneUS", function(phone_number, element) {
    phone_number = phone_number.replace(/\s+/g, ""); 
	return this.optional(element) || phone_number.length > 9 &&
		phone_number.match(/^(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}$/);
}, "Please specify a valid phone number");

      $("#frmContact").validate({
        debug: false,
        errorElement: "em", //the type of element the error message will be output as 
        errorPlacement: function(error, element) {//set the placement of error messages
            error.appendTo(element.parent("div.row"));
        },
//        submitHandler: function(form) {
//            $("#postBack").val(1);
//             $("#frmContact").submit();
//        },
        rules: {//validation rules are defined here (the rule names correspond to input ID values) 
            StoreNameTextBox:{
                required: true,
                minlength: 2
            },
            DateShoppedTextBox:{
                required: true,
                date: true    
            },
            FirstNameTextBox: {
                required: true,
                minlength: 2
            },
            EmailTextBox: {
                required: true,
                email: true
            },
            CardNumberTextBox: {
                required: true,
                minlength: 9,
                maxlength: 9,
                number: true
            },
           PhoneTextBox: {
                phoneUS: true
           }
        },
        messages: {//custom error messages defined here
            StoreNameTextBox:{
                required: "Store Name is required.",
                minlength: "Store Name must be at least 2 characters."
            },
            DateShoppedTextBox:{
                required: "Date Shopped is a required.",
                date:"Please enter a valid date. (MM/DD/YYYY)"           
            },
            FirstNameTextBox: {
                required: "First Name is required.",
                minlength: "First Name must be at least 2 characters."
            },
            EmailTextBox: {
                required: "Email is required.",
                email: "Please enter a valid email address."
            },
            CardNumberTextBox: {
                required: "Your Gold Card Number is required.",
                minlength: "Your Gold Card Number must be 9 characters.",
                maxlength: "Your Gold Card Number must be 9 characters.",
                number: "Your Gold Card Number can only contain numbers."
            },
            PhoneTextBox: {
                phoneUS: "Please enter a valid phone number."
            }
       }       
    });
});

function sendOrder()
{
    if ($('#frmContact').validate().form())
    {
      $("#postBack").val(1);
      $("#frmContact").submit();
      $("#SubmitForm").attr('disabled', 'disabled');
    }
}

