Added 'Include non-constituents in this search' on Advance search
This commit is contained in:
parent
af531fbd4c
commit
6a30fb4ca7
@ -49,6 +49,11 @@ class CRM_ConstituentsOnly_BAO_Query extends CRM_Contact_BAO_Query_Interface {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!empty($query->_paramLookup['ignore_constituent_search'])) {
|
||||||
|
$query->_qill[0][] = ts("Include non-constituents in this search");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
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][] = "
|
$query->_where[0][] = "
|
||||||
IF (contact_a.do_not_trade = 1,
|
IF (contact_a.do_not_trade = 1,
|
||||||
|
@ -190,6 +190,25 @@ function constituentsonly_civicrm_selectWhereClause($entity, &$clauses) {
|
|||||||
*/
|
*/
|
||||||
function constituentsonly_civicrm_searchColumns($objectName, &$headers, &$rows, &$selector) {
|
function constituentsonly_civicrm_searchColumns($objectName, &$headers, &$rows, &$selector) {
|
||||||
if (in_array($objectName, ['contact']) && !empty($rows)) {
|
if (in_array($objectName, ['contact']) && !empty($rows)) {
|
||||||
|
if (!empty($_POST['ignore_constituent_search'])) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
$rows = CRM_ConstituentsOnly_BAO_ConstituentsOnly::updateSearchRows($rows, $headers);
|
$rows = CRM_ConstituentsOnly_BAO_ConstituentsOnly::updateSearchRows($rows, $headers);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Implements hook_civicrm_buildForm().
|
||||||
|
*
|
||||||
|
* @link http://wiki.civicrm.org/confluence/display/CRMDOC/hook_civicrm_buildForm
|
||||||
|
*/
|
||||||
|
function constituentsonly_civicrm_buildForm($formName, &$form) {
|
||||||
|
if ('CRM_Contact_Form_Search_Advanced' == $formName
|
||||||
|
&& !($form->getVar('_action') == CRM_Core_Action::DELETE)
|
||||||
|
) {
|
||||||
|
$form->addElement('checkbox', 'ignore_constituent_search', ts('Include non-constituents'));
|
||||||
|
CRM_Core_Region::instance('page-body')->add(array(
|
||||||
|
'template' => 'CRM/common.tpl',
|
||||||
|
));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
13
templates/CRM/common.tpl
Normal file
13
templates/CRM/common.tpl
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
|
||||||
|
<table class="ignore_constituent_search-block">
|
||||||
|
<tr class="ignore_constituent_search">
|
||||||
|
<td>{$form.ignore_constituent_search.html} {$form.ignore_constituent_search.label}</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
{literal}
|
||||||
|
<script type="text/javascript">
|
||||||
|
CRM.$(function($) {
|
||||||
|
$('#search-settings td.adv-search-top-submit').before($('table.ignore_constituent_search-block tr td'));
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
{/literal}
|
Loading…
Reference in New Issue
Block a user