public function rss() { $this->setDefaultView(); $events = $this->Events(); foreach ($events as $event) { $event->Title = strip_tags($event->DateRange()) . " : " . $event->getTitle(); $event->Description = $event->getContent(); } $rss_title = $this->RSSTitle ? $this->RSSTitle : sprintf(_t("Calendar.UPCOMINGEVENTSFOR", "Upcoming Events for %s"), $this->Title); $rss = new RSSFeed($events, $this->Link(), $rss_title, "", "Title", "Description"); if (is_int($rss->lastModified)) { HTTP::register_modification_timestamp($rss->lastModified); header('Last-Modified: ' . gmdate("D, d M Y H:i:s", $rss->lastModified) . ' GMT'); } if (!empty($rss->etag)) { HTTP::register_etag($rss->etag); } $xml = str_replace(' ', ' ', $rss->renderWith('RSSFeed')); $xml = preg_replace('/<!--(.|\\s)*?-->/', '', $xml); $xml = trim($xml); HTTP::add_cache_headers(); $this->getResponse()->addHeader('Content-Type', 'application/rss+xml'); echo $xml; }
public function rss() { $events = $this->getModel()->UpcomingEvents(null, $this->DefaultEventDisplay); foreach ($events as $event) { $event->Title = strip_tags($event->_Dates()) . " : " . $event->EventTitle(); $event->Description = $event->EventContent(); } $rss = new RSSFeed($events, $this->Link(), sprintf(_t("Calendar.UPCOMINGEVENTSFOR", "Upcoming Events for %s"), $this->Title), "", "Title", "Description"); if (is_int($rss->lastModified)) { HTTP::register_modification_timestamp($rss->lastModified); header('Last-Modified: ' . gmdate("D, d M Y H:i:s", $rss->lastModified) . ' GMT'); } if (!empty($rss->etag)) { HTTP::register_etag($rss->etag); } $xml = str_replace(' ', ' ', $rss->renderWith('RSSFeed')); $xml = preg_replace('/<!--(.|\\s)*?-->/', '', $xml); $xml = trim($xml); HTTP::add_cache_headers(); header("Content-type: text/xml"); echo $xml; }