mirror of
https://github.com/friendica/friendica
synced 2024-11-20 03:03:40 +00:00
Private posts with Mastodon don't work - but this is expected
This commit is contained in:
parent
464650d4d7
commit
cb073bea61
1 changed files with 15 additions and 29 deletions
|
@ -125,9 +125,8 @@ class ActivityPub
|
||||||
}
|
}
|
||||||
|
|
||||||
$data = ['@context' => ['https://www.w3.org/ns/activitystreams', 'https://w3id.org/security/v1',
|
$data = ['@context' => ['https://www.w3.org/ns/activitystreams', 'https://w3id.org/security/v1',
|
||||||
['uuid' => 'http://schema.org/identifier', 'sensitive' => 'as:sensitive',
|
['vcard' => 'http://www.w3.org/2006/vcard/ns#', 'uuid' => 'http://schema.org/identifier',
|
||||||
'manuallyApprovesFollowers' => 'as:manuallyApprovesFollowers',
|
'sensitive' => 'as:sensitive', 'manuallyApprovesFollowers' => 'as:manuallyApprovesFollowers']]];
|
||||||
'vcard' => 'http://www.w3.org/2006/vcard/ns#']]];
|
|
||||||
|
|
||||||
$data['id'] = $contact['url'];
|
$data['id'] = $contact['url'];
|
||||||
$data['uuid'] = $user['guid'];
|
$data['uuid'] = $user['guid'];
|
||||||
|
@ -174,7 +173,7 @@ class ActivityPub
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$data['to'][] = System::baseUrl() . '/followers/' . $item['author-nick'];
|
//$data['cc'][] = System::baseUrl() . '/followers/' . $item['author-nick'];
|
||||||
$receiver_list = Item::enumeratePermissions($item);
|
$receiver_list = Item::enumeratePermissions($item);
|
||||||
|
|
||||||
$mentioned = [];
|
$mentioned = [];
|
||||||
|
@ -197,7 +196,7 @@ class ActivityPub
|
||||||
|
|
||||||
if (empty($data['to'])) {
|
if (empty($data['to'])) {
|
||||||
$data['to'] = $data['cc'];
|
$data['to'] = $data['cc'];
|
||||||
unset($data['cc']);
|
$data['cc'] = [];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -242,8 +241,7 @@ class ActivityPub
|
||||||
$contact = DBA::selectFirst('contact', ['url'], ['id' => $cid, 'network' => Protocol::ACTIVITYPUB]);
|
$contact = DBA::selectFirst('contact', ['url'], ['id' => $cid, 'network' => Protocol::ACTIVITYPUB]);
|
||||||
$profile = Probe::uri($contact['url'], Protocol::ACTIVITYPUB);
|
$profile = Probe::uri($contact['url'], Protocol::ACTIVITYPUB);
|
||||||
if ($profile['network'] == Protocol::ACTIVITYPUB) {
|
if ($profile['network'] == Protocol::ACTIVITYPUB) {
|
||||||
//$target = defaults($profile, 'batch', $profile['notify']);
|
$target = defaults($profile, 'batch', $profile['notify']);
|
||||||
$target = $profile['notify'];
|
|
||||||
$inboxes[$target] = $target;
|
$inboxes[$target] = $target;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -253,8 +251,7 @@ class ActivityPub
|
||||||
$contact = DBA::selectFirst('contact', ['url'], ['id' => $receiver, 'network' => Protocol::ACTIVITYPUB]);
|
$contact = DBA::selectFirst('contact', ['url'], ['id' => $receiver, 'network' => Protocol::ACTIVITYPUB]);
|
||||||
$profile = Probe::uri($contact['url'], Protocol::ACTIVITYPUB);
|
$profile = Probe::uri($contact['url'], Protocol::ACTIVITYPUB);
|
||||||
if ($profile['network'] == Protocol::ACTIVITYPUB) {
|
if ($profile['network'] == Protocol::ACTIVITYPUB) {
|
||||||
//$target = defaults($profile, 'batch', $profile['notify']);
|
$target = defaults($profile, 'batch', $profile['notify']);
|
||||||
$target = $profile['notify'];
|
|
||||||
$inboxes[$target] = $target;
|
$inboxes[$target] = $target;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -290,10 +287,10 @@ class ActivityPub
|
||||||
}
|
}
|
||||||
|
|
||||||
$data = ['@context' => ['https://www.w3.org/ns/activitystreams', 'https://w3id.org/security/v1',
|
$data = ['@context' => ['https://www.w3.org/ns/activitystreams', 'https://w3id.org/security/v1',
|
||||||
['Emoji' => 'toot:Emoji', 'Hashtag' => 'as:Hashtag', 'atomUri' => 'ostatus:atomUri',
|
['ostatus' => 'http://ostatus.org#', 'sensitive' => 'as:sensitive',
|
||||||
'conversation' => 'ostatus:conversation', 'inReplyToAtomUri' => 'ostatus:inReplyToAtomUri',
|
'Hashtag' => 'as:Hashtag', 'atomUri' => 'ostatus:atomUri',
|
||||||
'ostatus' => 'http://ostatus.org#', 'sensitive' => 'as:sensitive',
|
'conversation' => 'ostatus:conversation',
|
||||||
'toot' => 'http://joinmastodon.org/ns#']]];
|
'inReplyToAtomUri' => 'ostatus:inReplyToAtomUri']]];
|
||||||
|
|
||||||
$data['type'] = 'Create';
|
$data['type'] = 'Create';
|
||||||
$data['id'] = $item['uri'] . '#activity';
|
$data['id'] = $item['uri'] . '#activity';
|
||||||
|
@ -320,10 +317,10 @@ class ActivityPub
|
||||||
}
|
}
|
||||||
|
|
||||||
$data = ['@context' => ['https://www.w3.org/ns/activitystreams', 'https://w3id.org/security/v1',
|
$data = ['@context' => ['https://www.w3.org/ns/activitystreams', 'https://w3id.org/security/v1',
|
||||||
['Emoji' => 'toot:Emoji', 'Hashtag' => 'as:Hashtag', 'atomUri' => 'ostatus:atomUri',
|
['ostatus' => 'http://ostatus.org#', 'sensitive' => 'as:sensitive',
|
||||||
'conversation' => 'ostatus:conversation', 'inReplyToAtomUri' => 'ostatus:inReplyToAtomUri',
|
'Hashtag' => 'as:Hashtag', 'atomUri' => 'ostatus:atomUri',
|
||||||
'ostatus' => 'http://ostatus.org#', 'sensitive' => 'as:sensitive',
|
'conversation' => 'ostatus:conversation',
|
||||||
'toot' => 'http://joinmastodon.org/ns#']]];
|
'inReplyToAtomUri' => 'ostatus:inReplyToAtomUri']]];
|
||||||
|
|
||||||
$data = array_merge($data, self::createNote($item));
|
$data = array_merge($data, self::createNote($item));
|
||||||
|
|
||||||
|
@ -335,17 +332,6 @@ class ActivityPub
|
||||||
{
|
{
|
||||||
$tags = [];
|
$tags = [];
|
||||||
|
|
||||||
$receiver_list = Item::enumeratePermissions($item);
|
|
||||||
foreach ($receiver_list as $receiver) {
|
|
||||||
$contact = DBA::selectFirst('contact', ['url', 'addr'], ['id' => $receiver, 'network' => Protocol::ACTIVITYPUB]);
|
|
||||||
if (!empty($contact['addr'])) {
|
|
||||||
$mention = '@' . $contact['addr'];
|
|
||||||
} else {
|
|
||||||
$mention = '@' . $term['url'];
|
|
||||||
}
|
|
||||||
$tags[] = ['type' => 'Mention', 'href' => $contact['url'], 'name' => $mention];
|
|
||||||
}
|
|
||||||
|
|
||||||
$terms = Term::tagArrayFromItemId($item['id']);
|
$terms = Term::tagArrayFromItemId($item['id']);
|
||||||
foreach ($terms as $term) {
|
foreach ($terms as $term) {
|
||||||
if ($term['type'] == TERM_MENTION) {
|
if ($term['type'] == TERM_MENTION) {
|
||||||
|
@ -395,7 +381,7 @@ class ActivityPub
|
||||||
$data['source'] = ['content' => $item['body'], 'mediaType' => "text/bbcode"];
|
$data['source'] = ['content' => $item['body'], 'mediaType' => "text/bbcode"];
|
||||||
$data['summary'] = ''; // Ignore by now
|
$data['summary'] = ''; // Ignore by now
|
||||||
$data['sensitive'] = false; // - Query NSFW
|
$data['sensitive'] = false; // - Query NSFW
|
||||||
$data['emoji'] = []; // Ignore by now
|
//$data['emoji'] = []; // Ignore by now
|
||||||
$data['tag'] = self::createTagList($item);
|
$data['tag'] = self::createTagList($item);
|
||||||
$data['attachment'] = []; // @ToDo
|
$data['attachment'] = []; // @ToDo
|
||||||
return $data;
|
return $data;
|
||||||
|
|
Loading…
Reference in a new issue