aboutsummaryrefslogtreecommitdiff
path: root/views/rss
diff options
context:
space:
mode:
authornickw <nickw@36083f99-b078-4883-b0ff-0f9b5a30f544>2010-05-20 14:32:40 +0000
committernickw <nickw@36083f99-b078-4883-b0ff-0f9b5a30f544>2010-05-20 14:32:40 +0000
commit69aa38ac22767d458399b33a7deccf410ee15f25 (patch)
tree0e31651934141d67bbce024a82480a1f07a22488 /views/rss
parent25bf2850a98d3f5784df9c998c906a118708c0be (diff)
downloadelgg-69aa38ac22767d458399b33a7deccf410ee15f25.tar.gz
elgg-69aa38ac22767d458399b33a7deccf410ee15f25.tar.bz2
Updating RSS views to allow for object creator and geolocation.
git-svn-id: http://code.elgg.org/elgg/trunk@6110 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'views/rss')
-rw-r--r--views/rss/annotation/default.php52
-rw-r--r--views/rss/object/creator.php8
-rw-r--r--views/rss/object/default.php18
-rw-r--r--views/rss/object/georss.php10
4 files changed, 41 insertions, 47 deletions
diff --git a/views/rss/annotation/default.php b/views/rss/annotation/default.php
index 8ff34b7fa..aaad66919 100644
--- a/views/rss/annotation/default.php
+++ b/views/rss/annotation/default.php
@@ -1,46 +1,36 @@
<?php
/**
- * Elgg generic comment
+ * Elgg RSS view for a generic comment
*
* @package Elgg
* @subpackage Core
* @author Curverider Ltd
* @link http://elgg.org/
- *
*/
-$vars['entity'] = get_entity($vars['annotation']->entity_guid);
+$entity = get_entity($vars['annotation']->entity_guid);
+
$title = substr($vars['annotation']->value, 0, 32);
if (strlen($vars['annotation']->value) > 32) {
$title .= " ...";
}
-?>
+$permalink = $entity->getURL();
+$pubdate = date('r', $entity->time_created);
- <item>
- <guid isPermaLink='true'><?php echo $vars['entity']->getURL(); ?>#<?php echo $vars['annotation']->id; ?></guid>
- <pubDate><?php echo date("r",$vars['entity']->time_created) ?></pubDate>
- <link><?php echo $vars['entity']->getURL(); ?>#<?php echo $vars['annotation']->id; ?></link>
- <title><![CDATA[<?php echo $title; ?>]]></title>
- <description><![CDATA[<?php echo (autop($vars['annotation']->value)); ?>]]></description>
- <?php
- $owner = get_entity($vars['entity']->owner);
- if ($owner) {
-?>
- <dc:creator><?php echo $owner->name; ?></dc:creator>
-<?php
- }
- ?>
- <?php
- if (
- ($vars['entity'] instanceof Locatable) &&
- ($vars['entity']->getLongitude()) &&
- ($vars['entity']->getLatitude())
- ) {
- ?>
- <georss:point><?php echo $vars['entity']->getLatitude(); ?> <?php echo $vars['entity']->getLongitude(); ?></georss:point>
- <?php
- }
- ?>
- <?php echo elgg_view('extensions/item'); ?>
- </item> \ No newline at end of file
+$creator = elgg_view('object/creator', array('entity' => $entity));
+$georss = elgg_view('object/georss', array('entity' => $entity));
+$extensions = elgg_view('extensions/item');
+
+$item = <<<__HTML
+<item>
+ <guid isPermaLink='true'>$permalink#{$vars['annotation']->id}</guid>
+ <pubDate>$pubdate</pubDate>
+ <link>$permalink#{$vars['annotation']->id}</link>
+ <title><![CDATA[$title]]></title>
+ <description><![CDATA[{$vars['annotation']->value}]]></description>
+ $creator$georss$extensions
+</item>
+__HTML;
+
+echo $item;
diff --git a/views/rss/object/creator.php b/views/rss/object/creator.php
new file mode 100644
index 000000000..2bc6fd57d
--- /dev/null
+++ b/views/rss/object/creator.php
@@ -0,0 +1,8 @@
+<?php
+/**
+ *
+ */
+
+if ($owner = $vars['entity']->getOwnerEntity()) {
+ echo "<dc:creator>{$owner->name}</dc:creator>";
+}
diff --git a/views/rss/object/default.php b/views/rss/object/default.php
index 7b1ab10bc..c7ff172f7 100644
--- a/views/rss/object/default.php
+++ b/views/rss/object/default.php
@@ -20,22 +20,8 @@ if (empty($title)) {
$permalink = htmlspecialchars($vars['entity']->getURL());
$pubdate = date('r', $vars['entity']->time_created);
-$creator = '';
-if ($owner = $vars['entity']->getOwnerEntity()) {
- $creator = "<dc:creator>{$owner->name}</dc:creator>";
-}
-
-$georss = '';
-if (
- ($vars['entity'] instanceof Locatable) &&
- ($vars['entity']->getLongitude()) &&
- ($vars['entity']->getLatitude())
-) {
- $latitude = $vars['entity']->getLatitude();
- $longitude = $vars['entity']->getLongitude();
- $georss = "<georss:point>$latitude $longitude</georss:point>";
-}
-
+$creator = elgg_view('object/creator', $vars);
+$georss = elgg_view('object/georss', $vars);
$extension = elgg_view('extensions/item');
$item = <<<__HTML
diff --git a/views/rss/object/georss.php b/views/rss/object/georss.php
new file mode 100644
index 000000000..8aa027519
--- /dev/null
+++ b/views/rss/object/georss.php
@@ -0,0 +1,10 @@
+<?php
+/**
+ *
+ */
+
+if (($vars['entity'] instanceof Locatable) &&
+ ($latitude = $vars['entity']->getLongitude()) && ($longitude = $vars['entity']->getLatitude())
+) {
+ echo "<georss:point>$latitude $longitude</georss:point>";
+} \ No newline at end of file