Groups filter hack for smaller groups listings
authorAndrew Engelbrecht <andrew@fsf.org>
Fri, 15 Sep 2017 20:15:10 +0000 (16:15 -0400)
committerMichael McMahon <michael@fsf.org>
Mon, 22 Feb 2021 16:52:11 +0000 (11:52 -0500)
commit1aba2acafa65ef51848b33667063d5355843a559
treef7f97f047560a8391a2f0bdfd70918f8d29d332a
parentf5e6f9ae99fbdbb0ecd16c38d8026b8e998ff795
Groups filter hack for smaller groups listings

This change is a dirty hack that lets site admins filter the "Contacts
Group(s)" field output in select profiles. This reduces overwhem for
users when they are making a donation or filling out a form with the
Groups signup field. This is preferable to using a custom field with
smart groups because the Groups field provides double opt-in, while
custom fields do not.

The filter is controlled via a json string stored in a drupal variable
that can be set with drush like so:

drush vset --format=string groups_field_filters "{...}"

See the documentation marked with "sudoman hack" in
CRM/Contact/Form/Edit/TagsAndGroups.php for an example.
CRM/Contact/Form/Edit/TagsAndGroups.php
CRM/Contribute/Form/Contribution/Confirm.php
CRM/Event/Form/Registration/Confirm.php
CRM/Profile/Form.php