fixed searcg query
This commit is contained in:
parent
9fdb1ac12b
commit
e573074111
@ -45,7 +45,17 @@ class CRM_ConstituentsOnly_BAO_Query extends CRM_Contact_BAO_Query_Interface {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (CRM_Utils_Array::value('civicrm_contact', $query->_tables) && empty($query->_paramLookup['do_not_trade'])) {
|
if (CRM_Utils_Array::value('civicrm_contact', $query->_tables) && empty($query->_paramLookup['do_not_trade'])) {
|
||||||
$query->_where[0][] = "( contact_a.do_not_trade IS NULL OR contact_a.do_not_trade = 0)";
|
$query->_where[0][] = "
|
||||||
|
IF (contact_a.do_not_trade = 1,
|
||||||
|
CASE
|
||||||
|
WHEN (cr.id IS NULL OR cc1.is_deleted = 1 OR cc1.do_not_trade = 1)
|
||||||
|
THEN 0
|
||||||
|
ELSE 1
|
||||||
|
END,
|
||||||
|
1)
|
||||||
|
";
|
||||||
|
$query->_tables['civicrm_do_not_trade'] = 1;
|
||||||
|
$query->_whereTables['civicrm_do_not_trade'] = 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -56,6 +66,13 @@ class CRM_ConstituentsOnly_BAO_Query extends CRM_Contact_BAO_Query_Interface {
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public function from($name, $mode, $side) {
|
public function from($name, $mode, $side) {
|
||||||
|
if ($name == 'civicrm_do_not_trade') {
|
||||||
|
return " LEFT JOIN civicrm_relationship cr
|
||||||
|
ON (cr.contact_id_a = contact_a.id OR cr.contact_id_b = contact_a.id)
|
||||||
|
LEFT JOIN civicrm_contact cc1
|
||||||
|
ON (cr.contact_id_a = cc1.id OR cr.contact_id_b = cc1.id)
|
||||||
|
AND contact_a.id <> cc1.id";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -130,7 +130,7 @@ function constituentsonly_civicrm_alterSettingsFolders(&$metaDataFolders = NULL)
|
|||||||
*/
|
*/
|
||||||
function constituentsonly_civicrm_queryObjects(&$queryObjects, $type) {
|
function constituentsonly_civicrm_queryObjects(&$queryObjects, $type) {
|
||||||
if ($type == 'Contact') {
|
if ($type == 'Contact') {
|
||||||
//$queryObjects[] = new CRM_ConstituentsOnly_BAO_Query();
|
$queryObjects[] = new CRM_ConstituentsOnly_BAO_Query();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user