Making Friendica compatible to Nextcloud Social
This commit is contained in:
parent
0cdf0ba422
commit
d113ccd93c
|
@ -137,7 +137,7 @@ class APContact extends BaseObject
|
||||||
$apcontact['about'] = HTML::toBBCode(JsonLD::fetchElement($compacted, 'as:summary'));
|
$apcontact['about'] = HTML::toBBCode(JsonLD::fetchElement($compacted, 'as:summary'));
|
||||||
|
|
||||||
$apcontact['photo'] = JsonLD::fetchElement($compacted, 'as:icon', '@id');
|
$apcontact['photo'] = JsonLD::fetchElement($compacted, 'as:icon', '@id');
|
||||||
if (is_array($apcontact['photo'])) {
|
if (is_array($apcontact['photo']) || !empty($compacted['as:icon']['as:url']['@id'])) {
|
||||||
$apcontact['photo'] = JsonLD::fetchElement($compacted['as:icon'], 'as:url', '@id');
|
$apcontact['photo'] = JsonLD::fetchElement($compacted['as:icon'], 'as:url', '@id');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -826,10 +826,10 @@ class Receiver
|
||||||
$object_data = [];
|
$object_data = [];
|
||||||
$object_data['object_type'] = JsonLD::fetchElement($object, '@type');
|
$object_data['object_type'] = JsonLD::fetchElement($object, '@type');
|
||||||
$object_data['id'] = JsonLD::fetchElement($object, '@id');
|
$object_data['id'] = JsonLD::fetchElement($object, '@id');
|
||||||
|
|
||||||
$object_data['reply-to-id'] = JsonLD::fetchElement($object, 'as:inReplyTo');
|
$object_data['reply-to-id'] = JsonLD::fetchElement($object, 'as:inReplyTo');
|
||||||
|
|
||||||
if (empty($object_data['reply-to-id'])) {
|
// An empty "id" field is translated to "./" by the compactor, so we have to check for this content
|
||||||
|
if (empty($object_data['reply-to-id']) || ($object_data['reply-to-id'] == './')) {
|
||||||
$object_data['reply-to-id'] = $object_data['id'];
|
$object_data['reply-to-id'] = $object_data['id'];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -93,6 +93,10 @@ class JsonLD
|
||||||
'dc' => (object)['@id' => 'http://purl.org/dc/terms/', '@type' => '@id'],
|
'dc' => (object)['@id' => 'http://purl.org/dc/terms/', '@type' => '@id'],
|
||||||
'toot' => (object)['@id' => 'http://joinmastodon.org/ns#', '@type' => '@id']];
|
'toot' => (object)['@id' => 'http://joinmastodon.org/ns#', '@type' => '@id']];
|
||||||
|
|
||||||
|
// Workaround for Nextcloud Social
|
||||||
|
// See issue https://github.com/nextcloud/social/issues/330
|
||||||
|
$json['@context'][] = 'https://w3id.org/security/v1';
|
||||||
|
|
||||||
// Trying to avoid memory problems with large content fields
|
// Trying to avoid memory problems with large content fields
|
||||||
if (!empty($json['object']['source']['content'])) {
|
if (!empty($json['object']['source']['content'])) {
|
||||||
$content = $json['object']['source']['content'];
|
$content = $json['object']['source']['content'];
|
||||||
|
|
Loading…
Reference in a new issue