function validateExtraFieldSpecFields(applies_to) {
  var isValid=true;
  if (typeof spec_fields != 'undefined') {
    for (i=0; i<spec_fields.length; i++) {
      var field_id = '#efv_'+applies_to+"_"+spec_fields[i]+'_value';
      var value = jQuery.trim($(field_id).val());
      if (value=='') {
        addErrMsg(field_id, field_id+'error');
        isValid = false;
      } else {
        rmErrMsg(field_id, field_id+'error');
      }
    }
  }
  return isValid;
}

function validateRequiredLabels() {
  var isValid = true;
  $('label.required').each(function(){
    var input = $(this).nextAll('input,select,checkbox,radio');
    var value = jQuery.trim(input.val());
    var id = input.attr('id');
    var field_id = '#'+id;
    rmErrMsg(field_id, field_id+'error');
    if (value=='' && field_id != '#undefined') {
      addErrMsg(field_id, field_id+'error');
      isValid = false;
    }
  });
  return isValid;
}

function validateUserInfoFields() {
  var isValid = true;
  if (typeof($('#user_first_name'))!='undefined' && typeof($('#user_email'))!='undefined') {
    var first_name = jQuery.trim($('#user_first_name').val());
    var last_name = jQuery.trim($('#user_last_name').val());
    var email = jQuery.trim($('#user_email').val());
    var phone_num = jQuery.trim($('#user_phone_num').val());
    var password = jQuery.trim($('#user_password').val());
    var is_subscribed = $("input[name='user[is_subscribed]']:checked").val();
  
    if (first_name=='') { 
      $('#user_first_name').addClass('error-field');
      isValid = false;
    } else { 
      $('#user_first_name').removeClass('error-field');
    }

    if (last_name=='') { 
      addErrMsg( '#user_last_name', 'lnerror' );
      isValid = false;
    } else { 
      rmErrMsg( '#user_last_name', 'lnerror' ); 
    }

    if (email=='') { 
      addErrMsg( '#user_email', 'uemerror' );
      isValid = false;
    } else { 
      rmErrMsg( '#user_email', 'uemerror' );
    }

    if (password=='') {
      addErrMsg( '#user_password', 'upwerror' ); 
      isValid = false;
    }
    else { 
      rmErrMsg( '#user_password', 'upwerror' ); 
    }

    if (phoneIsRequired) {
      if (phone_num=='') { 
        addErrMsg( '#user_phone_num', 'upherror' );
        isValid = false;
      } else { 
        rmErrMsg( '#user_phone_num', 'upherror' );
      }
    }
  }
  
  return isValid;
}
