aboutsummaryrefslogtreecommitdiffstats
path: root/Zotlabs
diff options
context:
space:
mode:
authorMario <mario@mariovavti.com>2024-02-04 19:50:31 +0000
committerMario <mario@mariovavti.com>2024-02-04 19:50:31 +0000
commit209651705db81d43a3a0546866467e0bf26fd7b9 (patch)
treee71ff365e2b5666a2debaf3f08c3bacec29dcfe9 /Zotlabs
parentfab3c92a7c881be049cba62a950e90732d8c1ec5 (diff)
downloadvolse-hubzilla-209651705db81d43a3a0546866467e0bf26fd7b9.tar.gz
volse-hubzilla-209651705db81d43a3a0546866467e0bf26fd7b9.tar.bz2
volse-hubzilla-209651705db81d43a3a0546866467e0bf26fd7b9.zip
fix custom emoji reactions arriving from pleroma
Diffstat (limited to 'Zotlabs')
-rw-r--r--Zotlabs/Lib/Activity.php13
1 files changed, 13 insertions, 0 deletions
diff --git a/Zotlabs/Lib/Activity.php b/Zotlabs/Lib/Activity.php
index 089fb3687..ddd91f60b 100644
--- a/Zotlabs/Lib/Activity.php
+++ b/Zotlabs/Lib/Activity.php
@@ -2187,9 +2187,22 @@ class Activity {
if (in_array($act->type, ['EmojiReaction', 'EmojiReact'])) {
// Pleroma reactions
$t = trim(self::get_textfield($act->data, 'content'));
+
+ // Unicode emojis
if (mb_strlen($t) === 1) {
$content['content'] = $t;
}
+ // Custom emojis
+ elseif (preg_match('/^[:].*[:]$/i', $t, $match)) {
+ $content['content'] = $match[0];
+ if (isset($act->data['tag']) && is_array($act->data['tag'])) {
+ foreach ($act->data['tag'] as $tag) {
+ if ($tag['type'] === 'Emoji' && $tag['name'] === trim($match[0], ':')) {
+ $content['content'] = '[img=32x32]' . $tag['id'] . '[/img]';
+ }
+ }
+ }
+ }
}
}