campaignRepository = $campaignRepository; } /** * @since 4.0.0 */ public function __invoke($duplicatedFormID, $originalFormID) { $campaign = $this->campaignRepository->queryByFormId($originalFormID)->get(); if(!$campaign) { Log::error('Campaign does not exist for duplicated form.', [ 'duplicated_form_id' => $duplicatedFormID, 'original_form_id' => $originalFormID, ]); return; } try { $this->campaignRepository->addCampaignForm($campaign, $duplicatedFormID, true); } catch (\Exception $e) { Log::error('Failed to assign duplicated form to campaign.', [ 'campaign_id' => $campaign->id, 'duplicated_form_id' => $duplicatedFormID, 'original_form_id' => $originalFormID, 'error' => $e->getMessage(), ]); return; } } }