
  $(document).ready(function() {
    // SET HANDLER FOR strFriendEmail_1
    jQuery(jQuery("input[name='strFriendEmail_1']")).change(function() {
      if (jQuery("input[name='strFriendEmail_1']").val() != "" || jQuery("input[name='strFriendName_1']").val() != "") {
        jQuery("#name_1").rules("add", "required");
        jQuery("#email_1").rules("add", "required");
        jQuery("#email_1").rules("add", "email");
      }
      else {
        jQuery("#name_1").rules("remove", "required");
        jQuery("#email_1").rules("remove", "required");
        jQuery("#email_1").rules("remove", "email");
        $("#validate").validate().form();
      }
    });
    // SET HANDLER FOR strFriendName_1
    jQuery(jQuery("input[name='strFriendName_1']")).change(function() {
      if (jQuery("input[name='strFriendEmail_1']").val() != "" || jQuery("input[name='strFriendName_1']").val() != "") {
        jQuery("#name_1").rules("add", "required");
        jQuery("#email_1").rules("add", "required");
        jQuery("#email_1").rules("add", "email");
      }
      else {
        jQuery("#name_1").rules("remove", "required");
        jQuery("#email_1").rules("remove", "required");
        jQuery("#email_1").rules("remove", "email");
        $("#validate").validate().form();
      }
    });
    // SET HANDLER FOR strFriendEmail_2
    jQuery(jQuery("input[name='strFriendEmail_2']")).change(function() {
      if (jQuery("input[name='strFriendEmail_2']").val() != "" || jQuery("input[name='strFriendName_2']").val() != "") {
        jQuery("#name_2").rules("add", "required");
        jQuery("#email_2").rules("add", "required");
        jQuery("#email_2").rules("add", "email");
      }
      else {
        jQuery("#name_2").rules("remove", "required");
        jQuery("#email_2").rules("remove", "required");
        jQuery("#email_2").rules("remove", "email");
        $("#validate").validate().form();
      }
    });
    // SET HANDLER FOR strFriendName_2
    jQuery(jQuery("input[name='strFriendName_2']")).change(function() {
      if (jQuery("input[name='strFriendEmail_2']").val() != "" || jQuery("input[name='strFriendName_2']").val() != "") {
        jQuery("#name_2").rules("add", "required");
        jQuery("#email_2").rules("add", "required");
        jQuery("#email_2").rules("add", "email");
      }
      else {
        jQuery("#name_2").rules("remove", "required");
        jQuery("#email_2").rules("remove", "required");
        jQuery("#email_2").rules("remove", "email");
        $("#validate").validate().form();
      }
    });
    // SET HANDLER FOR strFriendEmail_3
    jQuery(jQuery("input[name='strFriendEmail_3']")).change(function() {
      if (jQuery("input[name='strFriendEmail_3']").val() != "" || jQuery("input[name='strFriendName_3']").val() != "") {
        jQuery("#name_3").rules("add", "required");
        jQuery("#email_3").rules("add", "required");
        jQuery("#email_3").rules("add", "email");
      }
      else {
        jQuery("#name_3").rules("remove", "required");
        jQuery("#email_3").rules("remove", "required");
        jQuery("#email_3").rules("remove", "email");
        $("#validate").validate().form();
      }
    });
    // SET HANDLER FOR strFriendName_3
    jQuery(jQuery("input[name='strFriendName_3']")).change(function() {
      if (jQuery("input[name='strFriendEmail_3']").val() != "" || jQuery("input[name='strFriendName_3']").val() != "") {
        jQuery("#name_3").rules("add", "required");
        jQuery("#email_3").rules("add", "required");
        jQuery("#email_3").rules("add", "email");
      }
      else {
        jQuery("#name_3").rules("remove", "required");
        jQuery("#email_3").rules("remove", "required");
        jQuery("#email_3").rules("remove", "email");
        $("#validate").validate().form();
      }
    });
    // VALIDATE CODE
    $.metadata.setType("attr", "validate");
      var validator = $("#validate").validate({
        rules: {
          strEmail: {
            required: true,
            email: true
          },
          strYearsPlayed: {
            required: true,
            digits: true,
            minlength: 1,
            maxlength: 2
          },
          strYearOfBirth: {
            required: true,
            digits: true,
          },
          strWords: {
            required: true,
            noOfWords: 24
          }
        },
        errorPlacement: function(error, element) { 
          if ( element.is(":radio") ) 
            error.appendTo( element.parent().next().next() ); 
          else if ( element.is(":checkbox") ) 
            error.appendTo ( element.next() ); 
          else 
            error.appendTo( element.parent().next() ); 
        },
        success: function(label) { 
          // set   as text for IE 
          label.html("<img src='images/tick16x16.png' >").addClass("checked"); 
        }
      });
      validator.resetForm();
  });

  // WORD COUNT
  $(document).ready(function() {
      $('.word_count').each(function() {
        var input = '#' + this.id;
        var count = input + '_count';
        $(count).show();
        word_count(input, count);
        $(this).keyup(function() { word_count(input, count) });
      });
  });
  function word_count(field, count) {
    var number = 0;
    var matches = $(field).val().match(/\b/g);
    if(matches) {
        number = matches.length/2;
    }
    number = 24 - number;
    //$(count).text( number + ' word' + (number != 1 ? 's' : '') + ' approx');
    $(count).text( number );
  }

  // ACTION FOR onSubmit
  $(function() {
    $("input#submit_btn").click(function() {
      var validateOK = $("#validate").validate().form();
      // ENSURE SOMETHING HAS BEEN ENTERED INTO THE FORM
      if (validateOK) {
        jQuery("#name_1").rules("remove", "required");
        jQuery("#email_1").rules("remove", "required");
        jQuery("#email_1").rules("remove", "email");
        jQuery("#name_2").rules("remove", "required");
        jQuery("#email_2").rules("remove", "required");
        jQuery("#email_2").rules("remove", "email");
        jQuery("#name_3").rules("remove", "required");
        jQuery("#email_3").rules("remove", "required");
        jQuery("#email_3").rules("remove", "email");
      }
      if  (
        jQuery("input[name='strFriendEmail_1']").val() == "" && 
        jQuery("input[name='strFriendName_1']").val() == "" &&
        jQuery("input[name='strFriendEmail_2']").val() == "" && 
        jQuery("input[name='strFriendName_2']").val() == "" &&
        jQuery("input[name='strFriendEmail_3']").val() == "" && 
        jQuery("input[name='strFriendName_3']").val() == ""
      ) {
        jQuery("#name_1").rules("add", "required");
        jQuery("#email_1").rules("add", "required");
        jQuery("#email_1").rules("add", "email");
        validateOK = $("#validate").validate().form();
      }
      return validateOK;
    });
  });

