/**
  * {@inheritDoc}
  */
 public function getCountTotalEntries()
 {
     $this->__initializer__ && $this->__initializer__->__invoke($this, 'getCountTotalEntries', array());
     return parent::getCountTotalEntries();
 }
Пример #2
0
 public function checkRSSEntryNode(\DOMXPath $xpath, Feed $feed)
 {
     $list_entries = $xpath->query("/rss/channel/item");
     $count = 0;
     $offset_start = 0;
     $n_entries = 20;
     $entries = $feed->getEntries()->slice($offset_start, $n_entries);
     foreach ($list_entries as $node) {
         if (sizeof($entries) == 0) {
             $offset_start += $n_entries;
             $entries = $feed->getEntries()->slice($offset_start, $n_entries);
             if (sizeof($entries) == 0) {
                 //no more
                 break;
             }
         }
         $feed_entry = array_shift($entries);
         switch ($node->nodeName) {
             case 'title':
                 $this->assertEquals($feed_entry->getTitle(), $node->nodeValue);
                 break;
             case 'description':
                 $this->assertEquals($feed_entry->getSubtitle(), $node->nodeValue);
                 break;
             case 'author':
                 $author = sprintf('%s (%s)', $feed_entry->getAuthorEmail(), $feed_entry->getAuthorName());
                 $this->assertEquals($author, $node->nodeValue);
                 break;
             case 'pubDate':
                 $this->assertEquals($feed_entry->getCreatedOn()->format(DATE_RFC2822), $node->nodeValue);
                 break;
             case 'guid':
                 $this->assertEquals($feed_entry->getLink()->getURI(), $node->nodeValue);
                 break;
             case 'link':
                 $this->assertEquals($feed_entry->getLink()->getURI(), $node->nodeValue);
                 break;
         }
         $count++;
         $this->checkRSSEntryItemsNode($xpath, $feed_entry, $count);
     }
     $this->assertEquals($feed->getCountTotalEntries(), $count);
 }
Пример #3
0
 /**
  * Retrieve detailled informations about one feed
  *
  * @param  Feed $feed
  * @param  type $user
  *
  * @return array
  */
 private function list_publication(Feed $feed, $user)
 {
     return ['id' => $feed->getId(), 'title' => $feed->getTitle(), 'subtitle' => $feed->getSubtitle(), 'total_entries' => $feed->getCountTotalEntries(), 'icon' => $feed->getIconUrl(), 'public' => $feed->isPublic(), 'readonly' => !$feed->isPublisher($user), 'deletable' => $feed->isOwner($user), 'created_on' => $feed->getCreatedOn()->format(DATE_ATOM), 'updated_on' => $feed->getUpdatedOn()->format(DATE_ATOM)];
 }