From e888c5563b0ba208857140f841cf10ebf10586e4 Mon Sep 17 00:00:00 2001
From: Christian Wach <needle@haystack.co.uk>
Date: Thu, 22 Aug 2019 19:03:55 +0100
Subject: [PATCH] Add `pre` and `post` hooks to Domain create and edit
 operations

---
 civicrm/CRM/Core/BAO/Domain.php | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/civicrm/CRM/Core/BAO/Domain.php b/civicrm/CRM/Core/BAO/Domain.php
index d4ccd6c9d1..78460afdc4 100644
--- a/civicrm/CRM/Core/BAO/Domain.php
+++ b/civicrm/CRM/Core/BAO/Domain.php
@@ -127,10 +127,12 @@ class CRM_Core_BAO_Domain extends CRM_Core_DAO_Domain {
    *   domain
    */
   public static function edit(&$params, &$id) {
+    CRM_Utils_Hook::pre('edit', 'Domain', CRM_Utils_Array::value('id', $params), $params);
     $domain = new CRM_Core_DAO_Domain();
     $domain->id = $id;
     $domain->copyValues($params);
     $domain->save();
+    CRM_Utils_Hook::post('edit', 'Domain', $domain->id, $domain);
     return $domain;
   }
 
@@ -143,9 +145,12 @@ class CRM_Core_BAO_Domain extends CRM_Core_DAO_Domain {
    *   domain
    */
   public static function create($params) {
+    $hook = empty($params['id']) ? 'create' : 'edit';
+    CRM_Utils_Hook::pre($hook, 'Domain', CRM_Utils_Array::value('id', $params), $params);
     $domain = new CRM_Core_DAO_Domain();
     $domain->copyValues($params, TRUE);
     $domain->save();
+    CRM_Utils_Hook::post($hook, 'Domain', $domain->id, $domain);
     return $domain;
   }
 
-- 
GitLab