function execute($process, $event)
 {
     $parameters = $process->attribute('parameter_list');
     $co = eZContentObject::fetch($parameters['object_id']);
     $parent = eZContentObjectTreeNode::fetch($co->attribute('main_parent_node_id'));
     $parentco = $parent->attribute('object');
     $newslettertype = eZPersistentObject::fetchObject(eZNewsletterType::definition(), null, array('article_pool_object_id' => $parentco->attribute('id'), 'status' => eZNewsletterType_StatusPublished));
     $list = eZNewsletter::fetchByContentObject($parameters['object_id']);
     if (empty($list) and is_object($newslettertype)) {
         $newsletter = eZNewsletter::create($co->attribute('name'), $co->attribute('owner_id'), $newslettertype->attribute('id'));
         $newsletter->setAttribute('contentobject_id', $parameters['object_id']);
         $newsletter->setAttribute('template_to_use', 'mobotixnewsletter');
         $newsletter->setAttribute('contentobject_version', $parameters['version']);
         $newsletter->store();
         $newsletter->publish();
     }
     return eZWorkflowType::STATUS_ACCEPTED;
 }
 function fetchNewsletterTypeCount()
 {
     $extension = 'eznewsletter';
     $base = eZExtension::baseDirectory();
     $baseDir = "{$base}/{$extension}/classes/";
     $customOperation = array(array('operation' => 'count( * )', 'name' => 'count'));
     $cond = array('status' => eZNewsletterType::StatusPublished);
     $rows = eZPersistentObject::fetchObjectList(eZNewsletterType::definition(), array(), $cond, null, null, false, false, $customOperation);
     return array('result' => $rows[0]['count']);
 }
 function fetchNewsletterTypeCount($useFilter)
 {
     $extension = 'eznewsletter';
     $base = eZExtension::baseDirectory();
     $baseDir = "{$base}/{$extension}/classes/";
     $customOperation = array(array('operation' => 'count( * )', 'name' => 'count'));
     $custom_conds = null;
     if ($useFilter) {
         $currentAccessArray = $GLOBALS['eZCurrentAccess'];
         $custom_conds = 'AND allowed_siteaccesses LIKE \'%' . $currentAccessArray['name'] . '%\'';
     }
     $cond = array('status' => eZNewsletterType::StatusPublished);
     $rows = eZPersistentObject::fetchObjectList(eZNewsletterType::definition(), array(), $cond, null, null, false, false, $customOperation, null, $custom_conds);
     return array('result' => $rows[0]['count']);
 }
 static function fetchByOffset($offset, $limit, $status = eZNewsletterType::StatusPublished, $asObject = true, $useFilter = false)
 {
     $custom_conds = null;
     if ($useFilter) {
         $currentAccessArray = $GLOBALS['eZCurrentAccess'];
         $custom_conds = 'AND allowed_siteaccesses LIKE \'%' . $currentAccessArray['name'] . '%\'';
     }
     $newsletterTypeList = eZPersistentObject::fetchObjectList(eZNewsletterType::definition(), null, array('status' => $status), array('id' => 'ASC'), array('offset' => $offset, 'length' => $limit), $asObject, false, null, null, $custom_conds);
     return $newsletterTypeList;
 }