CRM-19789 Cannot create smart group from 'Find participants'

    Details

    • Type: Bug
    • Status: Done/Fixed
    • Priority: Major
    • Resolution: Fixed/Completed
    • Affects Version/s: 4.7.15
    • Fix Version/s: 4.7.16
    • Component/s: None
    • Versioning Impact:
      Patch (backwards-compatible bug fixes)
    • Documentation Required?:
      None
    • Funding Source:
      Contributed Code
    • Verified?:
      No

      Description

      It is currently not possible to create a smart group from 'Find participants'. This seems to have regressed recently.

      Steps to recreate on dmaster:
      Events > Find participants
      Perform a search for a specific event
      Select a couple of contacts
      Under the action menu > Group - create smart group

      Expected behaviour:
      Smart group will be created with the criteria of the search

      Actual result:
      Fatal error: Call to undefined method CRM_Event_BAO_Query::qill() in C:\xampp\htdocs\civi\sites\all\modules\civicrm\CRM\Event\Form\Task\SaveSearch.php on line 72

        Attachments

          Activity

          [CRM-19789] Cannot create smart group from 'Find participants'
          John K. added a comment - - edited

          The qill method was removed here:
          https://github.com/civicrm/civicrm-core/commit/86a0d21ecdbb8f2fcad5e7aa58ed24143ea9ea0d

          Coleman Watts perhaps the qill method needs to be added to the base class? CRM_BAO_Query.

          John K. added a comment -

          I've submitted a PR for this which fixes the issue described. I haven't done much testing around the other classes which extend the CRM_Core_BAO_Query class though - although I did find other references to the qill method through CiviCRM. If you grep for "->qill" you'll find a few references.

          Do you think this is a sensible solution?

          Coleman Watts added a comment -

          Whoops, I remember searching for uses of that method before removing it (it appeared to be unused). Guess I was wrong.
          Adding it back to the base class is a good fix.

          John K. added a comment -

          No worries coleman, I missed it to because it was called using :: not -> . Thanks for the merge.

            People

            • Assignee:
              Unassigned
              Reporter:
              John K.

              Dates

              • Created:
                Updated:
                Resolved: