public function testMailAddressSetState() { $address = ezcMailAddress::__set_state(array('email' => '*****@*****.**', 'name' => 'No Spam')); $this->assertEquals('*****@*****.**', $address->email); $this->assertEquals('No Spam', $address->name); }
<?php $cli->output('Delivering newsletters '); // Fetch settings $newsletter_ini = eZINI::instance('jaj_newsletter.ini'); $site_ini = eZINI::instance('site.ini'); $root_node_id = $newsletter_ini->variable('NewsletterSettings', 'RootFolderNodeId'); $batch_limit = $newsletter_ini->variable('NewsletterDelivery', 'BatchLimit'); $site_url = $site_ini->variable('SiteSettings', 'SiteURL'); $mail_transport = jajSmtpTransport::mailTransport(); $charset = jajSmtpTransport::charset(); $from_email = new ezcMailAddress($newsletter_ini->variable('NewsletterSettings', 'FromEmail'), $newsletter_ini->variable('NewsletterSettings', 'FromName'), $charset); $reply_email = new ezcMailAddress($newsletter_ini->variable('NewsletterSettings', 'ReplyEmail'), '', $charset); if (!$batch_limit) { $batch_limit = 1; } $time_limit = 60 * 10; // 10 minutes, should be lover than cron job $start_time = time(); $pendingNewsletters = eZContentObjectTreeNode::subTreeByNodeID(array('Limit' => 10, 'ClassFilterType' => 'include', 'ClassFilterArray' => array('jaj_newsletter'), 'AttributeFilter' => array(array('jaj_newsletter/status', '=', 'in progress'))), $root_node_id); foreach ($pendingNewsletters as $newsletter) { $cli->output('Delivering newsletter: ' . $newsletter->getName() . ' (ContentObjectID: ' . $newsletter->ContentObjectID . ')'); $cli->output('Batch limit left: ' . $batch_limit); $object_id = $newsletter->ContentObjectID; $url_alias = $newsletter->urlAlias(); $url_newsletter = "http://" . $site_url . "/" . $url_alias . "/(generate)/nl/(uuid)/"; $data_map = $newsletter->DataMap(); $subject = $data_map['subject']->toString(); $deliveries = jajNewsletterDelivery::fetchDeliveriesByContentobjectIDAndState($object_id, 'pending', $batch_limit, 0, true); foreach ($deliveries as $delivery) { $batch_limit--;