diff --git a/src/NewsletterPageControllerExtender.php b/src/NewsletterPageControllerExtender.php index 8659004..8c7a935 100644 --- a/src/NewsletterPageControllerExtender.php +++ b/src/NewsletterPageControllerExtender.php @@ -105,12 +105,16 @@ public function InsertToNewsletter($Email, $FirstName="", $LastName=""){ if($config->NewsletterAPI=="campaignmonitor" && $config->CampaignMonitorListID){ $auth = array('api_key' => Environment::getEnv('CAMPAIGNMONITOR_API_KEY')); $wrap = new CS_REST_Subscribers($config->CampaignMonitorListID, $auth); - $result = $wrap->add(array( + // + $data = array( 'EmailAddress' => $Email, 'Name' => $FirstName." ".$LastName, 'ConsentToTrack' => 'yes', 'Resubscribe' => true - )); + ); + // + $this->owner->extend("updateCampaignMonitorNewsletter", $data); + $result = $wrap->add($data); } // Insert Into Mailchimp @@ -172,6 +176,8 @@ public function InsertToNewsletter($Email, $FirstName="", $LastName=""){ $contact->first_name = $FirstName; $contact->last_name = $LastName; + $this->owner->extend("updateCreateConstantContactNewsletter", $contact); + $returnContact = $cc->addContact(Environment::getEnv('CONSTANT_CONTACT_ACCESS_TOKEN'), $contact, true); } else { // update the existing contact if address already existed @@ -181,6 +187,8 @@ public function InsertToNewsletter($Email, $FirstName="", $LastName=""){ if ($contact instanceof Contact) { $contact->addList($config->ConstantContactListID); + $this->owner->extend("updateConstantContactNewsletter", $contact); + $returnContact = $cc->updateContact(Environment::getEnv('CONSTANT_CONTACT_ACCESS_TOKEN'), $contact, true); } else { $e = new CtctException(); @@ -215,6 +223,9 @@ public function InsertToNewsletter($Email, $FirstName="", $LastName=""){ "p[{$config->ActiveCampaignListID}]" => $config->ActiveCampaignListID, "status[{$config->ActiveCampaignListID}]" => 1, // "Active" status ]; + + $this->owner->extend("updateActiveCampaignContactNewsletter", $contact); + $contact_sync = $ac->api("contact/sync", $contact); } }