$cli->output($message); // 1. search all SEND objects which create for the mail list $waitForProcessObjectList = CjwNewsletterEditionSend::fetchEditionSendListByStatus(array(CjwNewsletterEditionSend::STATUS_WAIT_FOR_PROCESS)); $message = ">>> NlEditionSend objects with STATUS_WAIT_FOR_PROCESS found: " . count($waitForProcessObjectList); $cli->output($message); // 2. every SEND object true foreach ($waitForProcessObjectList as $newsletterEdtionSendObject) { $sendId = $newsletterEdtionSendObject->attribute('id'); $listContentObjectId = $newsletterEdtionSendObject->attribute('list_contentobject_id'); $message = "## Procsessing: cjw_newsletter_mailqueue_create - sendObjectId: " . $sendId; $cli->output($message); // 3. search all user which corresponding with list and has CjwNewslettersSubscription::STATUS_APPROVED // create a new send_item-entry $limit = 0; $offset = 0; $subscriptionObjectList = CjwNewsletterSubscription::fetchSubscriptionListByListIdAndStatus($listContentObjectId, CjwNewsletterSubscription::STATUS_APPROVED, $limit, $offset); $message = "++ Find SubscriptionObjects with STATUS_APPROVED: " . count($subscriptionObjectList); $cli->output($message); $counter = 0; foreach ($subscriptionObjectList as $subscriptionObject) { $subscriptionId = $subscriptionObject->attribute('id'); $editionContentObjectId = $subscriptionObject->attribute('edition_contentobject_id'); $newsletterUserId = $subscriptionObject->attribute('newsletter_user_id'); $subscriptionOutputFormatArray = $subscriptionObject->attribute('output_format_array'); $counter++; // status == STATUS_WAIT_FOR_PROCESS || != ABORT ? $newsletterEdtionSendObject->sync(); if ($newsletterEdtionSendObject->attribute('status') == CjwNewsletterEditionSend::STATUS_WAIT_FOR_PROCESS) { // every subscription can have multiple outputformats // create for every outputformat one send_item foreach ($subscriptionOutputFormatArray as $outputFormatId => $outputFormatName) {