$(document).ready(function(){

  var emailReg = /^([\w-\.\']+@([\w-]+\.)+[\w-]{2,4})?$/;
  var nameRegexp = /^[a-zA-Z-\' ]+$/;
  var fullnameRegexp = /^[a-zA-Z]+\s+[a-zA-Z]+$/;

  if($("#signup").length > 0){
    $("#email").focus();
  }

  $("#signup").submit(function(){
      $("error-field").html("");
      //$(".error").hide();
      //$(".domain_disallowed_error").hide();
      var hasError = false;
      var message = "";
      var email = $.trim($('#signup input[name=email]').val());
      var first_name = $.trim($('#signup input[name=first_name]').val());
      var last_name = $.trim($('#signup input[name=last_name]').val());
      var disallowed_domains = $.parseJSON($('#disallowed_domains').val());
      var terms_of_service = $("#terms_of_service").attr('checked');
      
      var domain = domain_name(email);
      if(email == '') {
        message = 'Please enter your email address.';
        hasError = true;
     }else if(!emailReg.test(email)) {
        message = 'Please enter a valid email.';
        hasError = true;
      }else if(first_name == ''){
        message = 'Please enter a your first name.';
        hasError = true;
      }else if(last_name == ''){
        message = 'Please enter a your last name.';
        hasError = true;        
      }else if((first_name.length > 0) && (!nameRegexp.test(first_name))){
        message = 'Please enter a valid first name.';
        hasError = true;
      }else if((last_name.length > 0) && (!nameRegexp.test(last_name))){
        message = 'Please enter a valid last name.';
        hasError = true;
      }else if($.inArray(domain, disallowed_domains) >= 0 ){
        message = $("#disallowed_domain_message").text();
        hasError = true;
      }else if(!terms_of_service){
        message = "You must accept MangoSpring's Terms of Service to Register";
        hasError = true;
      }
      if(hasError == true) {
        if(message != ""){
          $('p.error-field').text(message).slideDown();
        }
        $("#email").focus();
        return false;
      }else{
        $(".error").html("");
        if($("#ccPwd").length > 0){
          if($("#ccPwd").val() == "CVV"){
            $("#ccPwd").val("");
          }
        }
        return true;
      }
  });

//  $("#first_name").blur(function(){
//      var first_name = $(this).val();
//      $("#order_first_name").val(first_name)
//  });

//  $("#last_name").blur(function(){
//      var last_name = $(this).val();
//      $("#order_last_name").val(last_name)
//      });

  if($("#place_order").length > 0){
    $('#createAccBtn').click(function(){
      jQuery(this).hide();
      jQuery("#please_wait").show();
      jQuery('#signup-loader').show();
      return true;
    });

    $("#ccPwd").focus(function(){
      value = $(this).val();
      if(value == 'CVV')
        $(this).val("");
    });

    $("#ccPwd").blur(function(){
        value = $(this).val();
        if(value == '')
          $(this).val("CVV");
    });
  }


//    if($("#contact_us_form").length > 0){
//      $("#contact_us_form").submit(function(){
//        var email = $("#ms_email").val();
//        var name = $("#ms_name").val();
//        var subject = $("#ms_subject").val();
//        var message = $("#ms_message").val();
//        var error = false;
//        var error_message = "";
//        if(name == ''){
//          error_message = "Please enter your name"
//          error = true;
//        }else if(!fullnameRegexp.test(name)){
//          error_message = "Please enter a valid name."
//          error = true;
//        }else if(email == ''){
//          error_message = "Please enter a email address";
//          error = true;
//        }else if(!emailReg.test(email)) {
//          error_message = "Please enter a valid email address";
//          error = true;
//        }else if(subject == ""){
//          error_message = "Please select a enquiry subject."
//          error = true;
//        }else if(message == ""){
//          error_message = "Please enter a message."
//          error = true;
//        }
//
//        if(error){
//          alert(error_message);
//          return false;
//        }else{
//          return true;
//        }
//
//      });
//    }
    
    if($("#customer_login_form").length > 0){
      $("#customer_login_form").submit(function(){
        var email = $("#customer_login_form input[name=email]").val();
        $("#customer_login_error").hide();
        $("#customer_login_error").html("");
        if(email == ''){
          $("#customer_login_error").html("Please enter a email address");
          $("#customer_login_error").show();
          return false;
        }else if(!emailReg.test(email)) {
          $("#customer_login_error").html("Please enter a valid email address");
          $("#customer_login_error").show();
          return false;
        }
        return true;
      });
    }

//    if($("#send_query").length > 0){
//        $("#send_query input[name=email]").focus();
//        $("#send_query").submit(function(){
//            var email = $("#send_query input[name=email]").val();
//            var fullname = $('#send_query input[name=name]').val();
//            var message = $("#send_query input[name=message]").val();
//            var product = $("#send_query select[name=subject]").val();
//            var hasError = false;
//            if(email == '') {
//                message = 'Please enter a your email.';
//                hasError = true;
//            }else if(!emailReg.test(email)) {
//                message = 'Please enter a valid email.';
//                hasError = true;
//            }else if(fullname == '') {
//                message = 'Please enter your name.';
//                hasError = true;
//            }else if(message == '') {
//                message = 'Please enter your enquiry.';
//                hasError = true;
//            }else if((fullname.length > 0) && (!nameRegexp.test(fullname))){
//                message = 'Please enter a valid name.';
//                hasError = true;
//            }else if(product == '') {
//                message = 'Please select a product.';
//                hasError = true;
//            }
//
//            if(hasError == true) {
//                alert(message);
//                return false;
//            }else{
//                return true;
//            }
//
//        });
//    }


});

function domain_name(email){
  var at = email.indexOf("@");
  var dot = email.lastIndexOf(".");
  var name = email.slice((at + 1), dot);
  return name
}


