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>
Wed, 16 Dec 2020 21:36:38 +0000 (16:36 -0500)
commit7bb643c0ffbd38d24b840accae1ee99a9249cc8e
tree602424a15ae417d44003c37972c2b853559429e7
parent7c431a8818c59ba6afb4bb7939c439184708dada
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