updation, deletion and recreation of recurring list
authorunknown <priyanka.karan26@gmail.com>
Fri, 10 Oct 2014 10:37:27 +0000 (11:37 +0100)
committerunknown <priyanka.karan26@gmail.com>
Fri, 10 Oct 2014 10:37:27 +0000 (11:37 +0100)
CRM/Core/BAO/RecurringEntity.php
CRM/Core/Form/RecurringEntity.php

index e06e07f18dcd53ff02ba5147876d48a700f4ba46..fe659be40097ed49a3519486d38026990df657e4 100644 (file)
@@ -58,12 +58,12 @@ class CRM_Core_BAO_RecurringEntity extends CRM_Core_DAO_RecurringEntity {
     array(
       'civicrm_event' => array(
       'helper_class' => 'CRM_Event_DAO_Event',
-      'delete_func' => 'CRM_Event_BAO_Event::del',
+      'delete_func' => 'delete',
       'pre_delete_func' => 'CRM_Event_Form_ManageEvent_Repeat::checkRegistrationForEvents'
       ),
       'civicrm_activity' => array(
       'helper_class' => 'CRM_Activity_DAO_Activity',
-      'delete_func' => 'CRM_Activity_BAO_Activity::deleteActivity',
+      'delete_func' => 'delete',
       'pre_delete_func' => ''
       ) 
     ); 
index 52fe7b674243a597748a58552de47280dfd153e9..e59f77dc813f7d800050c199118bf4d40b3a9488 100644 (file)
@@ -374,19 +374,25 @@ class CRM_Core_Form_RecurringEntity {
             //Check if pre delete function has some ids to be deleted
             if (!empty(CRM_Core_BAO_RecurringEntity::$_entitiesToBeDeleted)) {
               foreach (CRM_Core_BAO_RecurringEntity::$_entitiesToBeDeleted as $value) {
-                call_user_func(array(
-                CRM_Core_BAO_RecurringEntity::$_recurringEntityHelper[$params['entity_table']]['helper_class'], 
-                call_user_func_array(CRM_Core_BAO_RecurringEntity::$_recurringEntityHelper[$params['entity_table']]['delete_func'], array($value)))
-                );
+                $result = civicrm_api3(ucfirst(strtolower($type)), CRM_Core_BAO_RecurringEntity::$_recurringEntityHelper[$params['entity_table']]['delete_func'], array(
+                          'sequential' => 1,
+                          'id' => $value,
+                          ));
+                if ($result['error']) {
+                  CRM_Core_Error::statusBounce('Error creating recurring list');
+                }
               }
             }
             else {
               $getRelatedEntities = CRM_Core_BAO_RecurringEntity::getEntitiesFor($params['entity_id'], $params['entity_table'], FALSE);
               foreach ($getRelatedEntities as $key => $value) {
-                call_user_func(array(
-                CRM_Core_BAO_RecurringEntity::$_recurringEntityHelper[$params['entity_table']]['helper_class'], 
-                call_user_func_array(CRM_Core_BAO_RecurringEntity::$_recurringEntityHelper[$params['entity_table']]['delete_func'], array(array('id' => $value['id']))))
-                );
+                $result = civicrm_api3(ucfirst(strtolower($type)), CRM_Core_BAO_RecurringEntity::$_recurringEntityHelper[$params['entity_table']]['delete_func'], array(
+                          'sequential' => 1,
+                          'id' => $value['id'],
+                          ));
+                if ($result['error']) {
+                  CRM_Core_Error::statusBounce('Error creating recurring list');
+                }
               }
             }
         }