aboutsummaryrefslogtreecommitdiff
path: root/app/views/index/rss.phtml
blob: 0b07a02f3eaecb63284b18c8a3fd74d59071a986 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?php /** @var FreshRSS_View $this */ ?>
<?= '<?xml version="1.0" encoding="UTF-8" ?>'; ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:media="http://search.yahoo.com/mrss/"
	<?= $this->rss_base == '' ? '' : ' xml:base="' . $this->rss_base . '"' ?>
>
	<channel>
		<title><?= $this->rss_title ?></title>
		<link><?= $this->internal_rendering ? $this->rss_url : Minz_Url::display('', 'html', true) ?></link>
		<description><?= _t('index.feed.rss_of', $this->rss_title) ?></description>
		<pubDate><?= date('D, d M Y H:i:s O') ?></pubDate>
		<lastBuildDate><?= gmdate('D, d M Y H:i:s') ?> GMT</lastBuildDate>
		<atom:link href="<?= $this->internal_rendering ? $this->rss_url :
			Minz_Url::display($this->rss_url, 'html', true) ?>" rel="self" type="application/rss+xml" />
<?php
/** @var FreshRSS_Entry */
foreach ($this->entries as $item) {
	if (!$this->internal_rendering) {
		/** @var FreshRSS_Entry */
		$item = Minz_ExtensionManager::callHook('entry_before_display', $item);
		if ($item == null) {
			continue;
		}
	}
?>
		<item>
			<title><?= $item->title() ?></title>
			<link><?= $item->link() ?></link>
			<?php
				$authors = $item->authors();
				if (is_array($authors)) {
					foreach ($authors as $author) {
						echo "\t\t\t" , '<dc:creator>', $author, '</dc:creator>', "\n";
					}
				}
				$categories = $item->tags();
				if (is_array($categories)) {
					foreach ($categories as $category) {
						echo "\t\t\t" , '<category>', $category, '</category>', "\n";
					}
				}
				$enclosures = $item->enclosures(false);
				if (is_array($enclosures)) {
					foreach ($enclosures as $enclosure) {
						// https://www.rssboard.org/media-rss
						echo "\t\t\t" , '<media:content url="' . $enclosure['url']
							. (empty($enclosure['medium']) ? '' : '" medium="' . $enclosure['medium'])
							. (empty($enclosure['type']) ? '' : '" type="' . $enclosure['type'])
							. (empty($enclosure['length']) ? '' : '" length="' . $enclosure['length'])
							. '"></media:content>', "\n";
					}
				}
			?>
			<description><![CDATA[<?php
	echo $item->content();
?>]]></description>
			<pubDate><?= date('D, d M Y H:i:s O', $item->date(true)) ?></pubDate>
			<guid isPermaLink="false"><?= $item->id() > 0 ? $item->id() : $item->guid() ?></guid>
		</item>
<?php } ?>

	</channel>
</rss>