/** * DO_CheckNewsletterAvailable * Data Object Method: Check whether or not newsletter record exists * Method should only be called by DataObject class * If the newsletter can be loaded, this returns true. Otherwise it returns false. * * @param Int $newsletterID The newsletter id to check for. * * @uses Newsletters_API * @uses Newsletters_API::Load() * * @return Boolean Returns TRUE if exists, FALSE otherwise */ function DO_CheckNewsletterAvailable($newsletterID) { if (is_null($this->_cachedNewsletterAPI)) { require_once(SENDSTUDIO_API_DIRECTORY . '/newsletters.php'); $this->_cachedNewsletterAPI = new Newsletters_API(); } $status = $this->_cachedNewsletterAPI->Load($newsletterID); // It should only return boolean AND NOTHING ELSE if ($status == false) { return false; } return true; }
/** * CampaignSent * Logs an event when a user is sent a campaign * * @uses Subscriber_API::AddEvent * * @return Void Returns nothing */ public static function CampaignSent($eventdata) { if (!($me = self::LoadSelf())) { return; } if ($eventdata->emailsent) { $newsletterapi = new Newsletters_API(); $newsletter = $newsletterapi->Load($eventdata->jobdetails['Newsletter']); $subscribersapi = new Subscribers_API(); $event = array('type' => GetLang('Addon_emaileventlog_email'), 'eventdate' => $subscribersapi->GetServerTime(), 'subject' => sprintf(GetLang('Addon_emaileventlog_sent_campaign_subject'), htmlspecialchars($newsletterapi->Get('name'), ENT_QUOTES, SENDSTUDIO_CHARSET)), 'notes' => GetLang('Addon_emaileventlog_sent_campaign')); $subscribersapi->AddEvent($eventdata->subscriberinfo['subscriberid'], $eventdata->subscriberinfo['listid'], $event); } }