summaryrefslogtreecommitdiff
path: root/actions
diff options
context:
space:
mode:
authorEvan Prodromou <evan@status.net>2010-12-11 11:24:07 -0500
committerEvan Prodromou <evan@status.net>2010-12-11 11:24:07 -0500
commitd9a614c57ec864fdb4e19e957cf50ac662a3679f (patch)
tree0fb688ff65e41cf30ec93e63774c170de13d1033 /actions
parent8dea5144a948a1c5dbf51ad8b3f39f4bd2e2fb30 (diff)
use new Subscription stream methods for AtomPub
Diffstat (limited to 'actions')
-rw-r--r--actions/atompubsubscriptionfeed.php31
1 files changed, 18 insertions, 13 deletions
diff --git a/actions/atompubsubscriptionfeed.php b/actions/atompubsubscriptionfeed.php
index b5577b71a..065790c20 100644
--- a/actions/atompubsubscriptionfeed.php
+++ b/actions/atompubsubscriptionfeed.php
@@ -51,8 +51,8 @@ require_once INSTALLDIR . '/lib/apiauth.php';
class AtompubsubscriptionfeedAction extends ApiAuthAction
{
- private $_profile = null;
- private $_subscribed = null;
+ private $_profile = null;
+ private $_subscriptions = null;
/**
* For initializing members of the class.
@@ -76,11 +76,12 @@ class AtompubsubscriptionfeedAction extends ApiAuthAction
}
// page and count from ApiAction
- // Note: this is a list of profiles, not subscriptions
- $this->_subscribed =
- $this->_profile->getSubscriptions(($this->page-1) * $this->count,
- $this->count + 1);
+ $offset = ($this->page-1) * $this->count;
+
+ $this->_subscriptions = Subscription::bySubscriber($subscriber,
+ $offset,
+ $this->count + 1);
return true;
}
@@ -174,7 +175,7 @@ class AtompubsubscriptionfeedAction extends ApiAuthAction
'type' => 'application/atom+xml'));
}
- if ($this->_subscribed->N > $this->count) {
+ if ($this->_subscriptions->N > $this->count) {
$feed->addLink(common_local_url('AtomPubSubscriptionFeed',
array('subscriber' =>
@@ -189,7 +190,7 @@ class AtompubsubscriptionfeedAction extends ApiAuthAction
// XXX: This is kind of inefficient
- while ($this->_subscribed->fetch()) {
+ while ($this->_subscriptions->fetch()) {
// We get one more than needed; skip that one
@@ -199,17 +200,21 @@ class AtompubsubscriptionfeedAction extends ApiAuthAction
break;
}
- $sub = Subscription::pkeyGet(array('subscriber' =>
- $this->_profile->id,
- 'subscribed' =>
- $this->_subscribed->id));
- $act = $sub->asActivity();
+ $act = $this->_subscriptions->asActivity();
$feed->addEntryRaw($act->asString(false, false, false));
}
$this->raw($feed->getString());
}
+ /**
+ * Add a new subscription
+ *
+ * Handling the POST method for AtomPub
+ *
+ * @return void
+ */
+
function addSubscription()
{
if (empty($this->auth_user) ||