diff --git a/dsr_civicrm.module b/dsr_civicrm.module index 8bdfc299c8fc5742b19ed0b361bce7c6f900cdd3..6a2ab2a95ce44e2c188a3512ed16671edb8ff246 100644 --- a/dsr_civicrm.module +++ b/dsr_civicrm.module @@ -407,6 +407,14 @@ function dsr_civicrm_civicrm_map_civi_data_to_shareholder($objectName, &$objectR dsr_civicrm_apply_shareholder_info_to_shareholder($shareholder_info, $shareholder); } +function dsr_civicrm_save_new_shareholder_revision($shareholder, $log_message = NULL) { + $shareholder->setNewRevision(TRUE); + $shareholder->setRevisionLogMessage($log_message ?? 'Update from civicrm'); + $shareholder->setRevisionCreationTime(REQUEST_TIME); + $shareholder->setRevisionUserId(\Drupal::currentUser()->id()); + $shareholder->save(); +} + /** * Implements hook_civicrm_post(). */ @@ -436,8 +444,8 @@ function dsr_civicrm_civicrm_post($op, $objectName, $objectId, &$objectRef) { } dsr_civicrm_civicrm_map_civi_data_to_shareholder($objectName, $objectRef, $shareholder); + dsr_civicrm_save_new_shareholder_revision($shareholder, "Update $objectName $objectId from civicrm"); - $shareholder->save(); $lock->release($lockname); } } @@ -478,7 +486,7 @@ function dsr_civicrm_civicrm_custom($op, $groupId, $entityId, &$params ) { return; } dsr_civicrm_apply_shareholder_info_to_shareholder($shareholder_info, $shareholder); - $shareholder->save(); + dsr_civicrm_save_new_shareholder_revision($shareholder); $lock->release($lockname); } }