public function executePostsFeed() { sfLoader::loadHelpers(array('I18N')); $posts = sfSimpleBlogPostPeer::getRecent($this->getRequestParameter('nb', sfConfig::get('app_sfSimpleBlog_feed_count', 5))); $this->feed = sfFeedPeer::createFromObjects($posts, array('format' => $this->getRequestParameter('format', 'atom1'), 'title' => __('Posts from %1%', array('%1%' => sfConfig::get('app_sfSimpleBlog_title', ''))), 'link' => $this->getController()->genUrl('sfSimpleBlog/index'), 'authorName' => sfConfig::get('app_sfSimpleBlog_author', ''), 'methods' => array('authorEmail' => '', 'authorName' => 'getAuthor'))); $this->setTemplate('feed'); }
public function executePostsFeed() { sfLoader::loadHelpers(array('I18N', 'Tag', 'Url')); $posts = sfSimpleBlogPostPeer::getRecent($this->getRequestParameter('nb', sfConfig::get('app_sfSimpleBlog_feed_count', 5))); $feed = new sfRss2ExtendedFeed(); $feed->initialize(array('title' => __('Posts from %1%', array('%1%' => sfConfig::get('app_sfSimpleBlog_title', ''))), 'link' => $this->getController()->genUrl('sfSimpleBlog/index'), 'siteUrl' => 'http://' . sfConfig::get('sf_site_url'), 'image' => 'http://' . sfConfig::get('sf_site_url') . '/images/logo-openparlamento.png', 'feedUrl' => $this->getRequest()->getURI(), 'language' => 'it', 'copyright' => "Licenza Creative Commons 'Attribuzione-Non commerciale-Non opere derivate 2.5 Generico'", 'authorEmail' => '*****@*****.**', 'authorName' => 'Openparlamento', 'description' => "Openparlamento.it - il progetto Openpolis per la trasparenza del Parlamento", 'ttl' => 1440, 'sy_updatePeriod' => 'daily', 'sy_updateFrequency' => '4', 'sy_updateBase' => '2000-01-01T12:00+00:00')); foreach ($posts as $post) { $item = new sfRss2ExtendedItem(); $item->initialize(array('title' => $post->getTitle(), 'link' => sfSimpleBlogTools::generatePostUri($post, null), 'authorEmail' => '*****@*****.**', 'authorName' => 'Openparlamento', 'pubDate' => $post->getPublishedAt('U'), 'permalink' => url_for('@blog_article?stripped_title=' . $post->getStrippedTitle(), true), 'description' => $post->getContent())); $feed->addItem($item); } $this->setLayout(false); $this->response->setContentType('text/xml'); $this->response->setContent($feed->asXml()); return sfView::NONE; }