$(document).ready(function(){
  
  /*################## functions/logic for email submission #################*/
  
  var options = {
    //target:        '#output1',   // target element(s) to be updated with server response
    beforeSubmit:  nep_promo_js_validation,  // pre-submit callback
    success:       showResponse  // post-submit callback

    // other available options:
    //url:       url         // override for form's 'action' attribute
    //type:      type        // 'get' or 'post', override for form's 'method' attribute
    //dataType:  null        // 'xml', 'script', or 'json' (expected server response type)
    //clearForm: true        // clear all form fields after successful submit
    //resetForm: true        // reset the form after successful submit

    // $.ajax options can be used here too, for example:
    //timeout:   3000
  };
  
  /**
   * validation for email submission form
   */
  function nep_promo_js_validation() 
  {
      var nep_promo_js_validation_failed;
  
      if ( $("#fm-eml_email_newsletter").attr("value") == '' || $("#fm-eml_email_newsletter").attr("value") == 'your email address' )
      {
          nep_promo_js_validation_failed = 1;
          alert("Please enter your email address.");
          $(".dialog_box").css("top", "900px");
          return false;
      }
  
      var regemail = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
      var emailRegEx = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i;
      var emailRegEx =/^([a-zA-Z0-9])(([a-zA-Z0-9])*([\._-])?([a-zA-Z0-9]))*@(([a-zA-Z0-9\-])+(\.))+([a-zA-Z]{2,4})+$/;
  
      if($("#fm-eml_email_newsletter").attr("value").search(emailRegEx) == -1) {
          nep_promo_js_validation_failed = 1;
          alert($("#fm-eml_email_newsletter").attr("value") + ' is not a valid email address.');
          $(".dialog_box").css("top", "900px");
          return false;
      }
      
      return true;
  }
  
  /**
   * shows the response from the email submission
   */
  function showResponse()
  {
    // show thank you message
    $(".newsletter-signup").html("<p style='float:right; margin-right: 10px; margin-top: 5px; font-size: 13px; font-color: #333; font-weight: bold;'>You are now in the know. Thank you.</p>");

    // google analytics tracking
    _gaq.push(['_trackPageview', 'newsletter_signup']);
  }
   
    
  /*############### Marketing events on page ##################*/
  
  // // bind email submission form and provide a simple callback function
  $('#newsletterSignUp').ajaxForm(options);

  /**
   * toggle input for footer form
   */
  toggleInput("#fm-req_firstname_newsletter", "first name");
  toggleInput("#fm-req_lastname_newsletter", "last name");
  toggleInput("#fm-eml_email_newsletter", "your email address");
  
  /*############### End Marketing events on page ##################*/
  
});

