Merge pull request #4380 from atif-shaikh/CRM-15301
[civicrm-core.git] / templates / CRM / Form / validate.tpl
index 502482b875a61c66779b4f930eed395e80ad0fcf..117867892ff2fba4a191818ca1b8650719862bf7 100644 (file)
  | see the CiviCRM license FAQ at http://civicrm.org/licensing        |
  +--------------------------------------------------------------------+
 *}
-
-{* Initialize jQuery validate *}
+{* Initialize jQuery validate on a form *}
 {* Extra params and functions may be added to the CRM.validate object before this template is loaded *}
-
-{if !$crm_form_validate_included}
-{assign var=crm_form_validate_included value=1}
-
-{literal}
-<script type="text/javascript" >
-CRM.$(function($) {
-  var messages = {{/literal}
-        required: "{ts escape='js'}This field is required.{/ts}",
-        remote: "{ts escape='js'}Please fix this field.{/ts}",
-        email: "{ts escape='js'}Please enter a valid email address.{/ts}",
-        url: "{ts escape='js'}Please enter a valid URL.{/ts}",
-        date: "{ts escape='js'}Please enter a valid date.{/ts}",
-        dateISO: "{ts escape='js'}Please enter a valid date (YYYY-MM-DD).{/ts}",
-        number: "{ts escape='js'}Please enter a valid number.{/ts}",
-        digits: "{ts escape='js'}Please enter only digits.{/ts}",
-        creditcard: "{ts escape='js'}Please enter a valid credit card number.{/ts}",
-        equalTo: "{ts escape='js'}Please enter the same value again.{/ts}",
-        accept: "{ts escape='js'}Please enter a value with a valid extension.{/ts}",
-        maxlength: $.validator.format("{ts escape='js'}Please enter no more than {ldelim}0{rdelim} characters.{/ts}"),
-        minlength: $.validator.format("{ts escape='js'}Please enter at least {ldelim}0{rdelim} characters.{/ts}"),
-        rangelength: $.validator.format("{ts escape='js'}Please enter a value between {ldelim}0{rdelim} and {ldelim}1{rdelim} characters long.{/ts}"),
-        range: $.validator.format("{ts escape='js'}Please enter a value between {ldelim}0{rdelim} and {ldelim}1{rdelim}.{/ts}"),
-        max: $.validator.format("{ts escape='js'}Please enter a value less than or equal to {ldelim}0{rdelim}.{/ts}"),
-        min: $.validator.format("{ts escape='js'}Please enter a value greater than or equal to {ldelim}0{rdelim}.{/ts}")
-  {literal}};
-
-  var params = {
-    'errorClass': 'crm-inline-error',
-    messages: {}
-  };
-
-  // use civicrm notifications when there are errors
-  params.invalidHandler = function(form, validator) {
-    var errors = validator.errorList;
-    {/literal}{if !$urlIsPublic}{literal}
-      for (var i in errors) {
-        $(errors[i].element).crmError(errors[i].message);
-      }
-    {/literal}{else}
-      alert("{ts escape='js'}Please review and correct the highlighted fields before continuing.{/ts}");
-    {/if}{literal}
-  };
-
-  CRM.validate.params = CRM.validate.params || {};
-  $.extend(CRM.validate.params, params);
-  $.extend($.validator.messages, messages);
-
+{if !$crm_form_validate_included and $smarty.get.snippet neq 'json' and $form and $form.formClass}
+  {assign var=crm_form_validate_included value=1}
+  {literal}
+  <script type="text/javascript">
+    CRM.$(function($) {
+      $("form.{/literal}{$form.formClass}{literal}").crmValidate();
+    });
+  </script>
   {/literal}
-  {if $form && $form.formName}
-    $("#{$form.formName}").validate(params);
-    {literal}
-    // Call any post-initialization callbacks
-    if (CRM.validate && CRM.validate.functions.length) {
-      $.each(CRM.validate.functions, function(i, func) {
-        func();
-      });
-    }
-    {/literal}
-  {/if}
-});
-</script>
 {/if}