Merge pull request #23881 from civicrm/5.51
[civicrm-core.git] / CRM / Event / ActionMapping.php
index 6a7f1ecda1aeec5a2853cc5c26e1431f8c207527..ae76bf3df2c7d6adb850559be16539b6d665654c 100644 (file)
@@ -149,8 +149,9 @@ class CRM_Event_ActionMapping extends \Civi\ActionSchedule\Mapping {
     if ($schedule->recipient_listing && $schedule->limit_to) {
       switch ($schedule->recipient) {
         case 'participant_role':
-          $query->where("e.role_id IN (#recipList)")
-            ->param('recipList', \CRM_Utils_Array::explodePadded($schedule->recipient_listing));
+          $regex = "([[:cntrl:]]|^)" . implode('([[:cntrl:]]|$)|([[:cntrl:]]|^)', \CRM_Utils_Array::explodePadded($schedule->recipient_listing)) . "([[:cntrl:]]|$)";
+          $query->where("e.role_id REGEXP (@regex)")
+            ->param('regex', $regex);
           break;
 
         default: