Exclude current contact from dupe check
authorColeman Watts <coleman@civicrm.org>
Tue, 24 Jul 2018 18:42:06 +0000 (14:42 -0400)
committerColeman Watts <coleman@civicrm.org>
Tue, 24 Jul 2018 18:42:06 +0000 (14:42 -0400)
api/v3/Contact.php
templates/CRM/Contact/Form/Contact.tpl

index 5d3ecc7af1cdd6145a74723f76bfab4f9572178f..d2785fc372e1f3df3b4e166ab95fc1fb32745593 100644 (file)
@@ -1360,7 +1360,7 @@ function civicrm_api3_contact_duplicatecheck($params) {
     $params['match'],
     $params['match']['contact_type'],
     $params['rule_type'],
-    array(),
+    CRM_Utils_Array::value('exclude', $params, []),
     CRM_Utils_Array::value('check_permissions', $params),
     CRM_Utils_Array::value('dedupe_rule_id', $params)
   );
index ddfb80ec7fe856a1c079fe5767f20e891df49e03..fc67bd80e0b007bd3597d595d6c047615d695895 100644 (file)
   CRM.$(function($) {
     var $form = $("form.{/literal}{$form.formClass}{literal}"),
       action = {/literal}{$action|intval}{literal},
+      cid = {/literal}{$contactId|intval}{literal},
       _ = CRM._;
 
     $('.crm-accordion-body').each( function() {
       if (rule) {
         params.rule_type = rule;
         params.match = match;
+        params.exclude = cid ? [cid] : [];
       } else {
         _.extend(params, match);
       }