Browse Source

Several fixes

pull/5854/head
Michael 3 years ago
parent
commit
93866b477a
  1. 4
      src/Module/Inbox.php
  2. 2
      src/Protocol/ActivityPub.php
  3. 6
      src/Protocol/ActivityPub/Processor.php
  4. 2
      src/Protocol/ActivityPub/Receiver.php

4
src/Module/Inbox.php

@ -26,7 +26,7 @@ class Inbox extends BaseModule
}
// Enable for test purposes
/*
if (HTTPSignature::getSigner($postdata, $_SERVER)) {
$filename = 'signed-activitypub';
} else {
@ -37,7 +37,7 @@ class Inbox extends BaseModule
file_put_contents($tempfile, json_encode(['argv' => $a->argv, 'header' => $_SERVER, 'body' => $postdata], JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE));
logger('Incoming message stored under ' . $tempfile);
*/
if (!empty($a->argv[1])) {
$user = DBA::selectFirst('user', ['uid'], ['nickname' => $a->argv[1]]);
if (!DBA::isResult($user)) {

2
src/Protocol/ActivityPub.php

@ -39,8 +39,6 @@ class ActivityPub
'manuallyApprovesFollowers' => 'as:manuallyApprovesFollowers',
'sensitive' => 'as:sensitive', 'Hashtag' => 'as:Hashtag']];
const ACCOUNT_TYPES = ['Person', 'Organization', 'Service', 'Group', 'Application'];
const CONTENT_TYPES = ['Note', 'Article', 'Video', 'Image'];
const ACTIVITY_TYPES = ['Like', 'Dislike', 'Accept', 'Reject', 'TentativeAccept'];
/**
* Checks if the web request is done for the AP protocol
*

6
src/Protocol/ActivityPub/Processor.php

@ -272,7 +272,7 @@ class Processor
*/
public static function followUser($activity)
{
$uid = User::getIdForURL($activity['object_actor']);
$uid = User::getIdForURL($activity['object_id']);
if (empty($uid)) {
return;
}
@ -326,12 +326,12 @@ class Processor
*/
public static function deletePerson($activity)
{
if (empty($activity['object_id']) || empty($activity['object_actor'])) {
if (empty($activity['object_id']) || empty($activity['actor'])) {
logger('Empty object id or actor.', LOGGER_DEBUG);
return;
}
if ($activity['object_id'] != $activity['object_actor']) {
if ($activity['object_id'] != $activity['actor']) {
logger('Object id does not match actor.', LOGGER_DEBUG);
return;
}

2
src/Protocol/ActivityPub/Receiver.php

@ -166,7 +166,7 @@ class Receiver
$object_data = self::processObject($activity);
$object_data['name'] = $type;
$object_data['author'] = JsonLD::fetchElement($activity, 'as:actor');
$object_data['object'] = $object_id;
$object_data['object_id'] = $object_id;
$object_data['object_type'] = ''; // Since we don't fetch the object, we don't know the type
} else {
$object_data = [];

Loading…
Cancel
Save