]> gitweb.fluxo.info Git - lorea/elgg.git/commitdiff
Fixes #4027 updated groups RSS feeds for 1.8
authorCash Costello <cash.costello@gmail.com>
Fri, 4 Nov 2011 11:01:21 +0000 (07:01 -0400)
committerCash Costello <cash.costello@gmail.com>
Fri, 4 Nov 2011 11:01:21 +0000 (07:01 -0400)
mod/groups/languages/en.php
mod/groups/views/rss/annotation/group_topic_post.php [new file with mode: 0644]
mod/groups/views/rss/discussion/replies.php [new file with mode: 0644]
mod/groups/views/rss/forum/topicposts.php [deleted file]
mod/groups/views/rss/forum/topics.php [deleted file]
mod/groups/views/rss/forum/viewposts.php [deleted file]
mod/groups/views/rss/groups/contentwrapper.php [deleted file]
mod/groups/views/rss/groups/profile/layout.php [new file with mode: 0644]
mod/groups/views/rss/groups/profileitems.php [deleted file]
mod/groups/views/rss/object/groupforumtopic.php

index 0818e56023037ed0e979f423375a29f9d53d35b6..09feaf8d135800035430ae35fd28ed30e4d82582 100644 (file)
@@ -114,6 +114,7 @@ $english = array(
        'discussion:latest' => 'Latest discussion',
        'discussion:group' => 'Group discussion',
        'discussion:none' => 'No discussion',
+       'discussion:reply:title' => 'Reply by %s',
 
        'discussion:topic:created' => 'The discussion topic was created.',
        'discussion:topic:updated' => 'The discussion topic was updated.',
diff --git a/mod/groups/views/rss/annotation/group_topic_post.php b/mod/groups/views/rss/annotation/group_topic_post.php
new file mode 100644 (file)
index 0000000..0d3a401
--- /dev/null
@@ -0,0 +1,32 @@
+<?php
+/**
+ * RSS view for a discussion reply
+ *
+ * @uses $vars['annotation']
+ */
+
+$annotation = $vars['annotation'];
+
+$poster = $annotation->getOwnerEntity();
+$poster_name = htmlspecialchars($poster->name, ENT_NOQUOTES, 'UTF-8');
+$pubdate = date('r', $annotation->getTimeCreated());
+$permalink = $annotation->getURL();
+
+$title = elgg_echo('discussion:reply:title', array($poster_name));
+
+$creator = elgg_view('page/components/creator', array('entity' => $annotation));
+$extensions = 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[{$vars['annotation']->value}]]></description>
+       $creator$extensions
+</item>
+
+__HTML;
+
+echo $item;
diff --git a/mod/groups/views/rss/discussion/replies.php b/mod/groups/views/rss/discussion/replies.php
new file mode 100644 (file)
index 0000000..419003b
--- /dev/null
@@ -0,0 +1,12 @@
+<?php
+/**
+ * List replies RSS view
+ *
+ * @uses $vars['entity'] ElggEntity
+ */
+
+$options = array(
+       'guid' => $vars['entity']->getGUID(),
+       'annotation_name' => 'group_topic_post',
+);
+echo elgg_list_annotations($options);
diff --git a/mod/groups/views/rss/forum/topicposts.php b/mod/groups/views/rss/forum/topicposts.php
deleted file mode 100644 (file)
index 15c5adc..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-<?php
-
-?>
\ No newline at end of file
diff --git a/mod/groups/views/rss/forum/topics.php b/mod/groups/views/rss/forum/topics.php
deleted file mode 100644 (file)
index 1cb22aa..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-       /**
-        * Elgg groups plugin
-        * 
-        * @package ElggGroups
-        */
-        
-       // If there are any topics to view, view them
-               echo $vars['topics'];
-?>
\ No newline at end of file
diff --git a/mod/groups/views/rss/forum/viewposts.php b/mod/groups/views/rss/forum/viewposts.php
deleted file mode 100644 (file)
index ad52365..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-    /**
-        * Elgg groups plugin display topic posts
-        * 
-        * @package ElggGroups
-        */
-
-    //display follow up comments
-    $count = $vars['entity']->countAnnotations('group_topic_post');
-    $offset = (int) get_input('offset',0);
-    
-    foreach($vars['entity']->getAnnotations('group_topic_post', 50, $offset, "asc") as $post) {
-
-       $post->title = '';
-       $post->description = $post->value;
-       echo elgg_view('object/default', array('entity' => $post));
-           // echo elgg_view("forum/topicposts",array('entity' => $post));
-               
-       }
-
-?>
\ No newline at end of file
diff --git a/mod/groups/views/rss/groups/contentwrapper.php b/mod/groups/views/rss/groups/contentwrapper.php
deleted file mode 100644 (file)
index 15397d5..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-
-       echo $vars['body'];
-
-?>
\ No newline at end of file
diff --git a/mod/groups/views/rss/groups/profile/layout.php b/mod/groups/views/rss/groups/profile/layout.php
new file mode 100644 (file)
index 0000000..3eeb9ea
--- /dev/null
@@ -0,0 +1,13 @@
+<?php
+/**
+ * Group profile RSS view
+ *
+ * Displays a list of the latest content in the group
+ *
+ * @uses $vars['entity'] ElggGroup object
+ */
+
+echo elgg_list_entities(array(
+       'type' => 'object',
+       'container_guid' => $vars['entity']->getGUID(),
+));
diff --git a/mod/groups/views/rss/groups/profileitems.php b/mod/groups/views/rss/groups/profileitems.php
deleted file mode 100644 (file)
index 5e595a3..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
-       /**
-        * Elgg groups items view.
-        * This is the messageboard, members, pages and latest forums posts. Each plugin will extend the views
-        * 
-        * @package ElggGroups
-        */
-        
-        //right column
-        if ($forae = elgg_get_entities(array('types' => 'object', 'container_guid' => $vars['entity']->guid))) {
-               foreach($forae as $forum)
-                       echo elgg_view_entity($forum);
-        }
-        
-?>
\ No newline at end of file
index 19297b3507735370b5b4fa90d6b2dabe92dfef4f..d730ef7965ba0bf66778cf0f1739d79dd30691af 100644 (file)
@@ -1,32 +1,35 @@
 <?php
 /**
- * Elgg groupforumtopic view
+ * Elgg groupforumtopic RSS view
  *
- * @package Elgg
- * @subpackage Core
+ * @package ElggGroups
  */
 
 $title = $vars['entity']->title;
-
-$body = '';
-$annotation = $vars['entity']->getAnnotations('group_topic_post', 1, 0, "asc");
-if (count($annotation == 1)) {
-       $body = $annotation[0]->value;
+if (empty($title)) {
+       $title = strip_tags($vars['entity']->description);
+       $title = elgg_get_excerpt($title, 32);
 }
-?>
 
+$permalink = htmlspecialchars($vars['entity']->getURL(), ENT_NOQUOTES, 'UTF-8');
+$pubdate = date('r', $vars['entity']->getTimeCreated());
+
+$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'><?php echo htmlspecialchars($vars['entity']->getURL()); ?></guid>
-<pubDate><?php echo date("r",$vars['entity']->time_created) ?></pubDate>
-<link><?php echo htmlspecialchars($vars['entity']->getURL()); ?></link>
-<title><![CDATA[<?php echo $title; ?>]]></title>
-<description><![CDATA[<?php echo (autop($body)); ?>]]></description>
-<?php
-               $owner = $vars['entity']->getOwnerEntity();
-               if ($owner) {
-?>
-<dc:creator><?php echo $owner->name; ?></dc:creator>
-<?php
-               }
-?>
-</item>
\ No newline at end of file
+       <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;