summaryrefslogtreecommitdiff
path: root/lib/atomnoticefeed.php
diff options
context:
space:
mode:
authorZach Copley <zach@status.net>2010-05-27 13:49:23 -0700
committerZach Copley <zach@status.net>2010-05-27 13:49:23 -0700
commitc5b61078e1548fba2820620e2e8f5fcbbda611a8 (patch)
treec3073b1f909814fb75a1a0f4da1980df2ec754c7 /lib/atomnoticefeed.php
parent3e9b35677746ba0a9877fd1a20ef4e3ae52bc7b5 (diff)
Pass auth user into Atom feed generators (needed for outputting favorited status in statusnet:notice_info tag)
Diffstat (limited to 'lib/atomnoticefeed.php')
-rw-r--r--lib/atomnoticefeed.php17
1 files changed, 15 insertions, 2 deletions
diff --git a/lib/atomnoticefeed.php b/lib/atomnoticefeed.php
index 35a45118c..ef44de4b6 100644
--- a/lib/atomnoticefeed.php
+++ b/lib/atomnoticefeed.php
@@ -44,9 +44,22 @@ if (!defined('STATUSNET'))
*/
class AtomNoticeFeed extends Atom10Feed
{
- function __construct($indent = true) {
+ var $cur;
+
+ /**
+ * Constructor - adds a bunch of XML namespaces we need in our
+ * notice-specific Atom feeds, and allows setting the current
+ * authenticated user (useful for API methods).
+ *
+ * @param User $cur the current authenticated user (optional)
+ * @param boolean $indent Whether to indent XML output
+ *
+ */
+ function __construct($cur = null, $indent = true) {
parent::__construct($indent);
+ $this->cur = $cur;
+
// Feeds containing notice info use these namespaces
$this->addNamespace(
@@ -115,7 +128,7 @@ class AtomNoticeFeed extends Atom10Feed
$source = $this->showSource();
$author = $this->showAuthor();
- $cur = common_current_user();
+ $cur = empty($this->cur) ? common_current_user() : $this->cur;
$this->addEntryRaw($notice->asAtomEntry(false, $source, $author, $cur));
}