/**
* Class CRM_Core_BAO_RecurringEntity.
*/
-class CRM_Core_BAO_RecurringEntity extends CRM_Core_DAO_RecurringEntity {
+class CRM_Core_BAO_RecurringEntity extends CRM_Core_DAO_RecurringEntity implements \Symfony\Component\EventDispatcher\EventSubscriberInterface {
const RUNNING = 1;
public $schedule = [];
const MODE_NEXT_ALL_ENTITY = 2;
const MODE_ALL_ENTITY_IN_SERIES = 3;
+ public static function getSubscribedEvents() {
+ return [
+ 'civi.dao.postInsert' => 'triggerInsert',
+ 'civi.dao.postUpdate' => 'triggerUpdate',
+ 'civi.dao.postDelete' => 'triggerDelete',
+ ];
+ }
+
/**
* Getter for status.
*
* An object of /Civi/Core/DAO/Event/PostUpdate containing dao object that was just updated.
*/
public static function triggerUpdate($event) {
- // if DB version is earlier than 4.6 skip any processing
- static $currentVer = NULL;
- if (!$currentVer) {
- $currentVer = CRM_Core_BAO_Domain::version();
- }
- if (version_compare($currentVer, '4.6.alpha1') < 0) {
- return;
- }
-
static $processedEntities = [];
$obj =& $event->object;
if (empty($obj->id) || empty($obj->__table)) {
return;
}
- // if DB version is earlier than 4.6 skip any processing
- static $currentVer = NULL;
- if (!$currentVer) {
- $currentVer = CRM_Core_BAO_Domain::version();
- }
- if (version_compare($currentVer, '4.6.alpha1') < 0) {
- return;
- }
-
static $processedEntities = [];
if (empty($obj->id) || empty($obj->__table)) {
return;
public static function triggerDelete($event) {
$obj =& $event->object;
- // if DB version is earlier than 4.6 skip any processing
- static $currentVer = NULL;
- if (!$currentVer) {
- $currentVer = CRM_Core_BAO_Domain::version();
- }
- if (version_compare($currentVer, '4.6.alpha1') < 0) {
- return;
- }
-
static $processedEntities = [];
if (empty($obj->id) || empty($obj->__table) || !$event->result) {
return;
$dao = self::$_tableDAOMapper[$linkedEntityTable];
}
else {
- CRM_Core_Session::setStatus('Could not update mode for linked entities');
+ CRM_Core_Session::setStatus(ts('Could not update mode for linked entities'));
return NULL;
}
$entityTable = $linkedEntityTable;