Merge pull request #4962 from totten/master-angular-ts
[civicrm-core.git] / CRM / Dedupe / BAO / QueryBuilder.php
CommitLineData
6a488035 1<?php
4c6ce474
EM
2/**
3 * Class CRM_Dedupe_BAO_QueryBuilder
4 */
6a488035 5class CRM_Dedupe_BAO_QueryBuilder {
e0ef6999
EM
6 /**
7 * @param $rg
8 * @param string $strID1
9 * @param string $strID2
10 *
11 * @return string
12 */
d58a19a1 13 public static function internalFilters($rg, $strID1 = 'contact1.id', $strID2 = 'contact2.id') {
6a488035
TO
14 // Add a contact id filter for dedupe by group requests and add logic
15 // to remove duplicate results with opposing orders, i.e. 1,2 and 2,1
481a74f4 16 if (!empty($rg->contactIds)) {
d58a19a1 17 $cids = implode(',', $rg->contactIds);
6a488035
TO
18 return "($strID1 IN ($cids) AND ( $strID2 NOT IN ($cids) OR ($strID2 IN ($cids) AND $strID1 < $strID2) ))";
19 }
20 else {
21 return "($strID1 < $strID2)";
22 }
23 }
96025800 24
353ffa53 25}