diff options
Diffstat (limited to 'mod/lightpics/views/rss')
-rw-r--r-- | mod/lightpics/views/rss/extensions/photos/xmlns.php | 9 | ||||
-rw-r--r-- | mod/lightpics/views/rss/object/album.php | 17 | ||||
-rw-r--r-- | mod/lightpics/views/rss/object/album/full.php | 19 | ||||
-rw-r--r-- | mod/lightpics/views/rss/object/album/summary.php | 33 | ||||
-rw-r--r-- | mod/lightpics/views/rss/object/image.php | 42 |
5 files changed, 120 insertions, 0 deletions
diff --git a/mod/lightpics/views/rss/extensions/photos/xmlns.php b/mod/lightpics/views/rss/extensions/photos/xmlns.php new file mode 100644 index 000000000..67cf45133 --- /dev/null +++ b/mod/lightpics/views/rss/extensions/photos/xmlns.php @@ -0,0 +1,9 @@ +<?php +/** + * Support media files by adding a namespace + * + * @author Cash Costello + * @license http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License v2 + */ + +?> xmlns:media="http://search.yahoo.com/mrss/"
\ No newline at end of file diff --git a/mod/lightpics/views/rss/object/album.php b/mod/lightpics/views/rss/object/album.php new file mode 100644 index 000000000..f880b56d6 --- /dev/null +++ b/mod/lightpics/views/rss/object/album.php @@ -0,0 +1,17 @@ +<?php +/** + * Album RSS view + * + * @uses $vars['entity'] TidypicsAlbum + * + * @author Cash Costello + * @license http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License v2 + */ + +$full_view = elgg_extract('full_view', $vars, false); + +if ($full_view) { + echo elgg_view('object/album/full', $vars); +} else { + echo elgg_view('object/album/summary', $vars); +} diff --git a/mod/lightpics/views/rss/object/album/full.php b/mod/lightpics/views/rss/object/album/full.php new file mode 100644 index 000000000..b1f5a567b --- /dev/null +++ b/mod/lightpics/views/rss/object/album/full.php @@ -0,0 +1,19 @@ +<?php +/** + * List photos in an album for RSS + * + * @uses $vars['entity'] TidypicsAlbum + * + * @author Cash Costello + * @license http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License v2 + */ + +$limit = (int)get_input('limit', 20); + +echo elgg_list_entities(array( + 'type' => 'object', + 'subtype' => 'image', + 'container_guid' => $vars['entity']->getGUID(), + 'limit' => $limit, + 'full_view' => false, +)); diff --git a/mod/lightpics/views/rss/object/album/summary.php b/mod/lightpics/views/rss/object/album/summary.php new file mode 100644 index 000000000..b6dc8f003 --- /dev/null +++ b/mod/lightpics/views/rss/object/album/summary.php @@ -0,0 +1,33 @@ +<?php +/** + * Individual album summary view for RSS + * + * @uses $vars['entity'] TidypicsAlbum + * + * @author Cash Costello + * @license http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License v2 + */ + +$permalink = htmlspecialchars($vars['entity']->getURL(), ENT_NOQUOTES, 'UTF-8'); +$pubdate = date('r', $vars['entity']->getTimeCreated()); + +$title = $vars['entity']->getTitle(); +$description = autop($vars['entity']->description); + +$creator = elgg_view('page/components/creator', $vars); +$georss = elgg_view('page/components/georss', $vars); +$extension = elgg_view('extensions/item', $vars); + +$item = <<<__HTML +<item> + <guid isPermaLink="true">$permalink</guid> + <pubDate>$pubdate</pubDate> + <link>$permalink</link> + <title><![CDATA[$title]]></title> + <description><![CDATA[$description]]></description> + $creator$georss$extension +</item> + +__HTML; + +echo $item; diff --git a/mod/lightpics/views/rss/object/image.php b/mod/lightpics/views/rss/object/image.php new file mode 100644 index 000000000..e3b67ee74 --- /dev/null +++ b/mod/lightpics/views/rss/object/image.php @@ -0,0 +1,42 @@ +<?php +/** + * Individual image RSS view + * + * @uses $vars['entity'] TidypicsImage + * + * @author Cash Costello + * @license http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License v2 + */ + +$permalink = htmlspecialchars($vars['entity']->getURL(), ENT_NOQUOTES, 'UTF-8'); +$pubdate = date('r', $vars['entity']->getTimeCreated()); + +$title = $vars['entity']->getTitle(); +$description = autop($vars['entity']->description); + +$creator = elgg_view('page/components/creator', $vars); +$georss = elgg_view('page/components/georss', $vars); +$extension = elgg_view('extensions/item', $vars); + +$thumbnail_url = $vars['entity']->getIconURL('tiny'); +$download_url = $vars['entity']->getIconURL('large'); + +$mime_type = $vars['entity']->getMimeType(); + +$item = <<<__HTML +<item> + <guid isPermaLink="true">$permalink</guid> + <pubDate>$pubdate</pubDate> + <link>$permalink</link> + <title><![CDATA[$title]]></title> + <description><![CDATA[$description]]></description> + $creator$georss$extension + <media:content url="$download_url" medium="image" type="$mime_type" /> + <media:title><![CDATA[$title]]></media:title> + <media:description><![CDATA[$description]]></media:description> + <media:thumbnail url="$thumbnail_url"></media:thumbnail> +</item> + +__HTML; + +echo $item; |