function fetchObjectStat($contentObjectID) { $db = eZDB::instance(); // Get total send $totalCountSQL = 'SELECT count(*) AS count FROM ezsendnewsletteritem item, eznewsletter newsletter WHERE newsletter.object_relations like \'%/' . $db->escapeString($contentObjectID) . '/%\' AND item.send_status = \'' . eZSendNewsletterItem::SendStatusSent . '\' AND newsletter.status = \'' . eZNewsletter::StatusPublished . '\' AND item.newsletter_id = newsletter.id'; $totalCountResult = $db->arrayQuery($totalCountSQL); $totalSend = $totalCountResult[0]['count']; // Get total read /* With relation check $totalReadSQL = 'SELECT count(*) AS count FROM ezsendnewsletteritem item, eznewsletter newsletter WHERE newsletter.object_relations like \'%/' . $db->escapeString( $contentObjectID ) . '/%\' AND newsletter.status = \'' . eZNewsletter::StatusPublished . '\' AND item.send_status = \'' . eZSendNewsletterItem::SendStatusSent . '\' AND item.object_read_ids like \'%/' . $db->escapeString( $contentObjectID ) . '/%\' AND item.newsletter_id = newsletter.id'; */ /* We ignore the relation */ $totalReadSQL = 'SELECT count(*) AS count FROM ezsendnewsletteritem item, eznewsletter newsletter WHERE item.send_status = \'' . eZSendNewsletterItem::SendStatusSent . '\' AND item.object_read_ids like \'%/' . $db->escapeString($contentObjectID) . '/%\' AND item.newsletter_id = newsletter.id'; $totalReadResult = $db->arrayQuery($totalReadSQL); $totalRead = $totalReadResult[0]['count']; return array('result' => array('num_sent' => $totalSend, 'num_read' => $totalRead, 'newsletter_list' => eZNewsletter::fetchListByRelatedContentObject($contentObjectID))); }