mirror of
https://github.com/friendica/friendica
synced 2025-05-10 00:24:09 +02:00
Require whitespace around smilies and normalize federating text
This commit is contained in:
parent
2cb0027f56
commit
d45e9d6af2
9 changed files with 458 additions and 57 deletions
|
@ -899,7 +899,7 @@ class Transmitter
|
|||
$tags = Tag::getByURIId($uri_id, [Tag::TO, Tag::CC, Tag::BCC, Tag::AUDIENCE]);
|
||||
if (empty($tags)) {
|
||||
Logger::debug('No receivers found', ['uri-id' => $uri_id]);
|
||||
$post = Post::selectFirst([Item::DELIVER_FIELDLIST], ['uri-id' => $uri_id, 'origin' => true]);
|
||||
$post = Post::selectFirst(Item::DELIVER_FIELDLIST, ['uri-id' => $uri_id, 'origin' => true]);
|
||||
if (!empty($post)) {
|
||||
ActivityPub\Transmitter::storeReceiversForItem($post);
|
||||
$tags = Tag::getByURIId($uri_id, [Tag::TO, Tag::CC, Tag::BCC, Tag::AUDIENCE]);
|
||||
|
@ -1512,10 +1512,14 @@ class Transmitter
|
|||
*
|
||||
* @param array $tags Tag array
|
||||
* @param string $text Text containing tags like :tag:
|
||||
* @return string normalized text
|
||||
*/
|
||||
private static function addEmojiTags(array &$tags, string $text)
|
||||
{
|
||||
foreach (Smilies::extractUsedSmilies($text, true) as $name => $url) {
|
||||
$emojis = Smilies::extractUsedSmilies($text);
|
||||
$normalized = $emojis[''];
|
||||
unset($emojis['']);
|
||||
foreach ($emojis as $name => $url) {
|
||||
$tags[] = [
|
||||
'type' => 'Emoji',
|
||||
'name' => $name,
|
||||
|
@ -1525,6 +1529,7 @@ class Transmitter
|
|||
],
|
||||
];
|
||||
}
|
||||
return $normalized;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1559,8 +1564,6 @@ class Transmitter
|
|||
}
|
||||
}
|
||||
|
||||
self::addEmojiTags($tags, $item['body']);
|
||||
|
||||
$announce = self::getAnnounceArray($item);
|
||||
// Mention the original author upon commented reshares
|
||||
if (!empty($announce['comment'])) {
|
||||
|
@ -1808,10 +1811,11 @@ class Transmitter
|
|||
$item = Post\Media::addHTMLAttachmentToItem($item);
|
||||
|
||||
$body = $item['body'];
|
||||
|
||||
$emojis = [];
|
||||
if ($type == 'Note') {
|
||||
$body = $item['raw-body'] ?? self::removePictures($body);
|
||||
}
|
||||
$body = self::addEmojiTags($emojis, $body);
|
||||
|
||||
/**
|
||||
* @todo Improve the automated summary
|
||||
|
@ -1893,7 +1897,7 @@ class Transmitter
|
|||
}
|
||||
|
||||
$data['attachment'] = self::createAttachmentList($item);
|
||||
$data['tag'] = self::createTagList($item, $data['quoteUrl'] ?? '');
|
||||
$data['tag'] = array_merge(self::createTagList($item, $data['quoteUrl'] ?? ''), $emojis);
|
||||
|
||||
if (empty($data['location']) && (!empty($item['coord']) || !empty($item['location']))) {
|
||||
$data['location'] = self::createLocation($item);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue