public function addCampaignId($campaignId)
{
if ($this->counters['attributes']['campaign_id'] < Api::CAMPAIGN_ID_LIMIT) {
if (isset($this->message['o:campaign'])) {
array_push($this->message['o:campaign'], $campaignId);
} else {
$this->message['o:campaign'] = [$campaignId];
}
$this->counters['attributes']['campaign_id'] += 1;
return $this->message['o:campaign'];
} else {
throw new TooManyParameters(ExceptionMessages::TOO_MANY_PARAMETERS_CAMPAIGNS);
}
}
/** * Add Mailgun campaign ID(s) to the message * Campaign ID limit is 3. * * @param int|string|array $campaigns * * @return \Bogardo\Mailgun\Mail\Message */ public function campaign($campaigns) { $campaigns = array_slice((array) $campaigns, 0, 3); foreach ($campaigns as $campaign) { $this->messageBuilder->addCampaignId($campaign); } return $this; }