From 154f9d2d346746c2e697535a623b31e12606a687 Mon Sep 17 00:00:00 2001 From: Marc Michalsky forumZFD Date: Thu, 11 Feb 2021 18:37:09 +0100 Subject: [PATCH] do not fetch TwingleCampaign in _construct() --- CRM/TwingleCampaign/BAO/TwingleCampaign.php | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/CRM/TwingleCampaign/BAO/TwingleCampaign.php b/CRM/TwingleCampaign/BAO/TwingleCampaign.php index 31a3c65..4dcec79 100644 --- a/CRM/TwingleCampaign/BAO/TwingleCampaign.php +++ b/CRM/TwingleCampaign/BAO/TwingleCampaign.php @@ -24,25 +24,23 @@ class CRM_TwingleCampaign_BAO_TwingleCampaign { * ## TwingleCampaign constructor * * @param array|null $values + * @param int|null $id * - * @throws CiviCRM_API3_Exception + * @throws \CiviCRM_API3_Exception */ - public function __construct(array $values = NULL) { + public function __construct(array $values, int $id = NULL) { $this->prefix = 'twingle_campaign_'; - $this->id = $values['id'] ?? NULL; + $this->id = $id ?? NULL; $this->values['campaign_type_id'] = 'twingle_campaign'; if ($this->id) { - $this->fetch(); - if ($values) { - $this->update($values); - } + $this->update($values); $this->getParentProject(); $this->createCid(); $this->createUrl(); } - elseif ($values) { + else { $this->update($values); } } @@ -83,8 +81,8 @@ class CRM_TwingleCampaign_BAO_TwingleCampaign { * @throws CiviCRM_API3_Exception */ private function fetch() { - $this->values = civicrm_api3('Campaign', 'getsingle', - ['id' => $this->id]); + $this->values = civicrm_api3('TwingleCampaign', 'getsingle', + ['id' => $this->id])['values']; }