public function initialize($feed_array) { parent::initialize($feed_array); $this->setSiteUrl(isset($feed_array['siteUrl']) ? $feed_array['siteUrl'] : ''); $this->setCopyright(isset($feed_array['copyright']) ? $feed_array['copyright'] : ''); $this->setAtomLink(isset($feed_array['atom_link']) ? $feed_array['atom_link'] : ''); $this->setLastBuildDate(isset($feed_array['lastBuildDate']) ? $feed_array['lastBuildDate'] : ''); $this->setTTL(isset($feed_array['ttl']) ? $feed_array['ttl'] : ''); $this->setImage(isset($feed_array['image']) ? $feed_array['image'] : ''); $this->setSyUpdatePeriod(isset($feed_array['sy_updatePeriod']) ? $feed_array['sy_updatePeriod'] : ''); $this->setSyUpdateFrequency(isset($feed_array['sy_updateFrequency']) ? $feed_array['sy_updateFrequency'] : ''); $this->setSyUpdateBase(isset($feed_array['sy_updateBase']) ? $feed_array['sy_updateBase'] : ''); }
$t->is($generatedItem->getDescription(), $feedItem->getDescription(), 'The description property is properly set'); $t->is($generatedItem->getContent(), $feedItem->getContent(), 'The content property is properly set'); $t->is($generatedItem->getAuthorEmail(), $feedItem->getAuthorEmail(), 'The author email property is properly set'); $t->is($generatedItem->getAuthorName(), $feedItem->getAuthorName(), 'The author name property is properly set'); $t->isnt($generatedItem->getAuthorLink(), $feedItem->getAuthorLink(), 'The author link property cannot be set from a RSS feed'); $t->is($generatedItem->getPubDate(), $feedItem->getPubdate(), 'The publication date property is properly set'); $t->is($generatedItem->getComments(), $feedItem->getComments(), 'The comments property is properly set'); $t->is($generatedItem->getUniqueId(), $feedItem->getUniqueId(), 'The unique id property is properly set'); $t->is($generatedItem->getEnclosure()->__toString(), $feedItem->getEnclosure()->__toString(), 'The enclosure property is properly set'); $t->is($generatedItem->getCategories(), $feedItem->getCategories(), 'The categories property is properly set'); $generatedItem = $items[1]; $t->is($generatedItem->getAuthorEmail(), $feedItem2->getAuthorEmail(), 'The author email property is properly set, even if there is no email address'); $t->diag('RSS 0.91'); $feed = new sfRssFeed(); $feed->setVersion('0.91'); $feed->initialize($feedParams); $feedItem = new sfFeedItem(); $feedItem->initialize($itemParams); $feed->addItem($feedItem); $feedItem2 = new sfFeedItem(); $feedItem2->initialize($item2Params); $feed->addItem($feedItem2); $feedString = $feed->asXml(); $generatedFeed = new sfRssFeed(); $generatedFeed->fromXml($feedString); $t->isnt($generatedFeed->getCategories(), $feed->getCategories(), '<category> doesn\'t exist in a RSS0.91 feed'); $items = $generatedFeed->getItems(); $generatedItem = $items[0]; $t->isnt($generatedItem->getAuthorEmail(), $feedItem->getAuthorEmail(), '<item><author> doesn\'t exist in a RSS0.91 feed'); $t->isnt($generatedItem->getAuthorName(), $feedItem->getAuthorName(), '<item><author> doesn\'t exist in a RSS0.91 feed'); $t->isnt($generatedItem->getPubDate(), $feedItem->getPubdate(), '<item><pubDate> doesn\'t exist in a RSS0.91 feed');
public function getDefaultFeed($max = 25) { $feed = new sfRssFeed(); $feed->initialize(array('title' => 'Cothink Feed for ' . $this->getFullName(), 'link' => 'http://www.cothink.org/', 'authorEmail' => $this->getPrimaryContactInfo()->getEmail(), 'authorName' => $this->getFullName())); $events = HistoryEventPeer::retrieveByUser($this->getUserId(), $max); // TODO: Allow user to configure max $eventItems = sfFeedPeer::convertObjectsToItems($events, array('routeName' => '@permalink')); $feed->addItems($eventItems); return $feed; }