summaryrefslogtreecommitdiff
path: root/plugins/OStatus/actions/usersalmon.php
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/OStatus/actions/usersalmon.php')
-rw-r--r--plugins/OStatus/actions/usersalmon.php12
1 files changed, 11 insertions, 1 deletions
diff --git a/plugins/OStatus/actions/usersalmon.php b/plugins/OStatus/actions/usersalmon.php
index 12c74798f..c8a16e06f 100644
--- a/plugins/OStatus/actions/usersalmon.php
+++ b/plugins/OStatus/actions/usersalmon.php
@@ -55,6 +55,8 @@ class UsersalmonAction extends SalmonAction
*/
function handlePost()
{
+ common_log(LOG_INFO, "Received post of '{$this->act->object->id}' from '{$this->act->actor->id}'");
+
switch ($this->act->object->type) {
case ActivityObject::ARTICLE:
case ActivityObject::BLOGENTRY:
@@ -80,13 +82,21 @@ class UsersalmonAction extends SalmonAction
throw new ClientException("In reply to a notice not by this user");
}
} else if (!empty($context->attention)) {
- if (!in_array($context->attention, $this->user->uri)) {
+ if (!in_array($this->user->uri, $context->attention)) {
+ common_log(LOG_ERR, "{$this->user->uri} not in attention list (".implode(',', $context->attention).")");
throw new ClientException("To the attention of user(s) not including this one!");
}
} else {
throw new ClientException("Not to anyone in reply to anything!");
}
+ $existing = Notice::staticGet('uri', $this->act->object->id);
+
+ if (!empty($existing)) {
+ common_log(LOG_ERR, "Not saving notice '{$existing->uri}'; already exists.");
+ return;
+ }
+
$this->saveNotice();
}