Issue 10706: Publish public custom fields in AP

This commit is contained in:
Michael 2021-09-14 01:28:58 +00:00
parent c8344886fd
commit e3413cf959
2 changed files with 19 additions and 1 deletions

View File

@ -64,10 +64,14 @@ class ActivityPub
'diaspora' => 'https://diasporafoundation.org/ns/',
'litepub' => 'http://litepub.social/ns#',
'toot' => 'http://joinmastodon.org/ns#',
'schema' => 'http://schema.org#',
'manuallyApprovesFollowers' => 'as:manuallyApprovesFollowers',
'sensitive' => 'as:sensitive', 'Hashtag' => 'as:Hashtag',
'directMessage' => 'litepub:directMessage',
'discoverable' => 'toot:discoverable']];
'discoverable' => 'toot:discoverable',
'PropertyValue' => 'schema:PropertyValue',
'value' => 'schema:value',
]];
const ACCOUNT_TYPES = ['Person', 'Organization', 'Service', 'Group', 'Application', 'Tombstone'];
/**
* Checks if the web request is done for the AP protocol

View File

@ -392,6 +392,20 @@ class Transmitter
}
}
$custom_fields = [];
foreach (DI::profileField()->selectByContactId(0, 1) as $profile_field) {
$custom_fields[] = [
'type' => 'PropertyValue',
'name' => $profile_field->label,
'value' => BBCode::convertForUriId($owner['uri-id'], $profile_field->value)
];
};
if (!empty($custom_fields)) {
$data['attachment'] = $custom_fields;
}
$data['generator'] = self::getService();
// tags: https://kitty.town/@inmysocks/100656097926961126.json