<?php
/*
+--------------------------------------------------------------------+
- | CiviCRM version 4.3 |
+ | CiviCRM version 4.4 |
+--------------------------------------------------------------------+
| Copyright CiviCRM LLC (c) 2004-2013 |
+--------------------------------------------------------------------+
}
function processStandardTimeline($activitySetXML, &$params) {
- if ('Change Case Type' == CRM_Utils_Array::value('activityTypeName', $params)) {
+ if ('Change Case Type' == CRM_Utils_Array::value('activityTypeName', $params)
+ && CRM_Utils_Array::value('resetTimeline', $params, TRUE)) {
// delete all existing activities which are non-empty
$this->deleteEmptyActivity($params);
}
}
function deleteEmptyActivity(&$params) {
+ $activityContacts = CRM_Core_OptionGroup::values('activity_contacts', FALSE, FALSE, FALSE, NULL, 'name');
+ $targetID = CRM_Utils_Array::key('Activity Targets', $activityContacts);
+
$query = "
DELETE a
FROM civicrm_activity a
INNER JOIN civicrm_activity_contact t ON t.activity_id = a.id
WHERE t.contact_id = %1
-AND t.record_type = 'Target'
+AND t.record_type_id = $targetID
AND a.is_auto = 1
AND a.is_current_revision = 1
";