/** * Return CjwNewsletterList object * * if the this is a CjwNewsletterSubscription or * CjwNewsletterSubscriptionVirtual * * A Virtual Subscription is connected at minimun to one CjwNewsletterList * * @return CjwNewsletterList object or false */ function getNewsletterListAttributeContent() { $object = eZContentObject::fetch($this->attribute('list_contentobject_id')); // fetch current version of list // list version is not needed for subscriptions!! // a subscription is valid for a complete list if ($this->attribute('is_virtual')) { return CjwNewsletterListVirtual::fetchByListObjectVersion($this->attribute('list_contentobject_id'), 0); } else { return CjwNewsletterList::fetchByListObjectVersion($this->attribute('list_contentobject_id'), 0); } }
/** * (non-PHPdoc) * @see kernel/classes/eZDataType#deleteStoredObjectAttribute($objectAttribute, $version) */ function deleteStoredObjectAttribute($contentObjectAttribute, $version = null) { $object = CjwNewsletterListVirtual::fetch($contentObjectAttribute->attribute("id"), $contentObjectAttribute->attribute("version")); if (is_object($object)) { $object->remove(); } }
/** * Count all user who subscripe to list * * @param CjwNewsletterListVirtual $virtualListObject * @param mixed int|array $statusIds * @return integer */ static function fetchSubscriptionListByListIdCount($virtualListObject, $subscriptionStatus = false) { $filterArray = $virtualListObject->getFilterInternalArray($subscriptionStatus); $externalFilterArray = $virtualListObject->getFilterExternalArray($subscriptionStatus); // // external filters // Filters from extra db table not cjwnl // // fetch all user as rows $count = self::fetchByFilterCount($filterArray, $externalFilterArray); return $count; }