summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authorEvan Prodromou <evan@status.net>2010-08-14 11:46:12 -0700
committerEvan Prodromou <evan@status.net>2010-08-14 11:46:12 -0700
commit9e4f40806a2fc4769a4dcc37d1ff337a1d02d8d4 (patch)
treeda34091d658d989ab30e7d2baca71c4f77a1e0b7 /plugins
parent9b7536351b1efa5bf222fad1fb92b6dc9e33156f (diff)
parent029aa0c61c9942c0688fd3dc9aa2893311543db1 (diff)
Merge branch 'master' into noticetitle
Diffstat (limited to 'plugins')
-rw-r--r--plugins/OStatus/actions/groupsalmon.php4
-rw-r--r--plugins/OStatus/actions/usersalmon.php12
-rw-r--r--plugins/OStatus/classes/Ostatus_profile.php35
-rw-r--r--plugins/OStatus/lib/salmonaction.php20
4 files changed, 37 insertions, 34 deletions
diff --git a/plugins/OStatus/actions/groupsalmon.php b/plugins/OStatus/actions/groupsalmon.php
index d60725a71..5094dccf0 100644
--- a/plugins/OStatus/actions/groupsalmon.php
+++ b/plugins/OStatus/actions/groupsalmon.php
@@ -61,7 +61,7 @@ class GroupsalmonAction extends SalmonAction
function handlePost()
{
// @fixme process all objects?
- switch ($this->act->objects[0]->type) {
+ switch ($this->activity->objects[0]->type) {
case ActivityObject::ARTICLE:
case ActivityObject::BLOGENTRY:
case ActivityObject::NOTE:
@@ -74,7 +74,7 @@ class GroupsalmonAction extends SalmonAction
// Notice must be to the attention of this group
- $context = $this->act->context;
+ $context = $this->activity->context;
if (empty($context->attention)) {
throw new ClientException("Not to the attention of anyone.");
diff --git a/plugins/OStatus/actions/usersalmon.php b/plugins/OStatus/actions/usersalmon.php
index 6c360c49f..641e131ab 100644
--- a/plugins/OStatus/actions/usersalmon.php
+++ b/plugins/OStatus/actions/usersalmon.php
@@ -55,10 +55,10 @@ class UsersalmonAction extends SalmonAction
*/
function handlePost()
{
- common_log(LOG_INFO, "Received post of '{$this->act->objects[0]->id}' from '{$this->act->actor->id}'");
+ common_log(LOG_INFO, "Received post of '{$this->activity->objects[0]->id}' from '{$this->activity->actor->id}'");
// @fixme: process all activity objects?
- switch ($this->act->objects[0]->type) {
+ switch ($this->activity->objects[0]->type) {
case ActivityObject::ARTICLE:
case ActivityObject::BLOGENTRY:
case ActivityObject::NOTE:
@@ -72,7 +72,7 @@ class UsersalmonAction extends SalmonAction
// Notice must either be a) in reply to a notice by this user
// or b) to the attention of this user
- $context = $this->act->context;
+ $context = $this->activity->context;
if (!empty($context->replyToID)) {
$notice = Notice::staticGet('uri', $context->replyToID);
@@ -92,7 +92,7 @@ class UsersalmonAction extends SalmonAction
throw new ClientException("Not to anyone in reply to anything!");
}
- $existing = Notice::staticGet('uri', $this->act->objects[0]->id);
+ $existing = Notice::staticGet('uri', $this->activity->objects[0]->id);
if (!empty($existing)) {
common_log(LOG_ERR, "Not saving notice '{$existing->uri}'; already exists.");
@@ -143,7 +143,7 @@ class UsersalmonAction extends SalmonAction
function handleFavorite()
{
- $notice = $this->getNotice($this->act->objects[0]);
+ $notice = $this->getNotice($this->activity->objects[0]);
$profile = $this->ensureProfile()->localProfile();
$old = Fave::pkeyGet(array('user_id' => $profile->id,
@@ -164,7 +164,7 @@ class UsersalmonAction extends SalmonAction
*/
function handleUnfavorite()
{
- $notice = $this->getNotice($this->act->objects[0]);
+ $notice = $this->getNotice($this->activity->objects[0]);
$profile = $this->ensureProfile()->localProfile();
$fave = Fave::pkeyGet(array('user_id' => $profile->id,
diff --git a/plugins/OStatus/classes/Ostatus_profile.php b/plugins/OStatus/classes/Ostatus_profile.php
index 8f8eb773f..1fae468f6 100644
--- a/plugins/OStatus/classes/Ostatus_profile.php
+++ b/plugins/OStatus/classes/Ostatus_profile.php
@@ -445,26 +445,31 @@ class Ostatus_profile extends Memcached_DataObject
* @param DOMElement $feed for context
* @param string $source identifier ("push" or "salmon")
*/
+
public function processEntry($entry, $feed, $source)
{
$activity = new Activity($entry, $feed);
- // @todo process all activity objects
- switch ($activity->objects[0]->type) {
- case ActivityObject::ARTICLE:
- case ActivityObject::BLOGENTRY:
- case ActivityObject::NOTE:
- case ActivityObject::STATUS:
- case ActivityObject::COMMENT:
- break;
- default:
- throw new ClientException("Can't handle that kind of post.");
- }
+ if (Event::handle('StartHandleFeedEntry', array($activity))) {
+
+ // @todo process all activity objects
+ switch ($activity->objects[0]->type) {
+ case ActivityObject::ARTICLE:
+ case ActivityObject::BLOGENTRY:
+ case ActivityObject::NOTE:
+ case ActivityObject::STATUS:
+ case ActivityObject::COMMENT:
+ if ($activity->verb == ActivityVerb::POST) {
+ $this->processPost($activity, $source);
+ } else {
+ common_log(LOG_INFO, "Ignoring activity with unrecognized verb $activity->verb");
+ }
+ break;
+ default:
+ throw new ClientException("Can't handle that kind of post.");
+ }
- if ($activity->verb == ActivityVerb::POST) {
- $this->processPost($activity, $source);
- } else {
- common_log(LOG_INFO, "Ignoring activity with unrecognized verb $activity->verb");
+ Event::handle('EndHandleFeedEntry', array($activity));
}
}
diff --git a/plugins/OStatus/lib/salmonaction.php b/plugins/OStatus/lib/salmonaction.php
index fa9dc3b1d..9d6c6b269 100644
--- a/plugins/OStatus/lib/salmonaction.php
+++ b/plugins/OStatus/lib/salmonaction.php
@@ -47,7 +47,6 @@ class SalmonAction extends Action
$xml = file_get_contents('php://input');
-
// Check the signature
$salmon = new Salmon;
if (!$salmon->verifyMagicEnv($xml)) {
@@ -58,7 +57,6 @@ class SalmonAction extends Action
$env = $magic_env->parse($xml);
$xml = $magic_env->unfold($env);
}
-
$dom = DOMDocument::loadXML($xml);
if ($dom->documentElement->namespaceURI != Activity::ATOM ||
@@ -67,7 +65,7 @@ class SalmonAction extends Action
$this->clientError(_m('Salmon post must be an Atom entry.'));
}
- $this->act = new Activity($dom->documentElement);
+ $this->activity = new Activity($dom->documentElement);
return true;
}
@@ -79,9 +77,9 @@ class SalmonAction extends Action
{
StatusNet::setApi(true); // Send smaller error pages
- common_log(LOG_DEBUG, "Got a " . $this->act->verb);
+ common_log(LOG_DEBUG, "Got a " . $this->activity->verb);
if (Event::handle('StartHandleSalmon', array($this->activity))) {
- switch ($this->act->verb)
+ switch ($this->activity->verb)
{
case ActivityVerb::POST:
$this->handlePost();
@@ -164,12 +162,12 @@ class SalmonAction extends Action
*/
function handleUpdateProfile()
{
- $oprofile = Ostatus_profile::getActorProfile($this->act);
+ $oprofile = Ostatus_profile::getActorProfile($this->activity);
if ($oprofile) {
common_log(LOG_INFO, "Got a profile-update ping from $oprofile->uri");
- $oprofile->updateFromActivityObject($this->act->actor);
+ $oprofile->updateFromActivityObject($this->activity->actor);
} else {
- common_log(LOG_INFO, "Ignoring profile-update ping from unknown " . $this->act->actor->id);
+ common_log(LOG_INFO, "Ignoring profile-update ping from unknown " . $this->activity->actor->id);
}
}
@@ -178,10 +176,10 @@ class SalmonAction extends Action
*/
function ensureProfile()
{
- $actor = $this->act->actor;
+ $actor = $this->activity->actor;
if (empty($actor->id)) {
common_log(LOG_ERR, "broken actor: " . var_export($actor, true));
- common_log(LOG_ERR, "activity with no actor: " . var_export($this->act, true));
+ common_log(LOG_ERR, "activity with no actor: " . var_export($this->activity, true));
throw new Exception("Received a salmon slap from unidentified actor.");
}
@@ -191,6 +189,6 @@ class SalmonAction extends Action
function saveNotice()
{
$oprofile = $this->ensureProfile();
- return $oprofile->processPost($this->act, 'salmon');
+ return $oprofile->processPost($this->activity, 'salmon');
}
}