aboutsummaryrefslogtreecommitdiffstats
path: root/Zotlabs
diff options
context:
space:
mode:
authorMario Vavti <mario@mariovavti.com>2024-11-09 10:55:10 +0100
committerMario Vavti <mario@mariovavti.com>2024-11-09 10:55:10 +0100
commita0c54c5f04ba7f27cf667ba372ea86e23a331d07 (patch)
tree08a616fd5f3bc480b6083f72e63972d466d30e11 /Zotlabs
parentebad9d56c9e9396847a66c07124e863cc2940b3c (diff)
downloadvolse-hubzilla-a0c54c5f04ba7f27cf667ba372ea86e23a331d07.tar.gz
volse-hubzilla-a0c54c5f04ba7f27cf667ba372ea86e23a331d07.tar.bz2
volse-hubzilla-a0c54c5f04ba7f27cf667ba372ea86e23a331d07.zip
make sure to store target information when decoding and indicate contained conversations with a colored border for now
Diffstat (limited to 'Zotlabs')
-rw-r--r--Zotlabs/Lib/Activity.php10
-rw-r--r--Zotlabs/Lib/ThreadItem.php3
2 files changed, 12 insertions, 1 deletions
diff --git a/Zotlabs/Lib/Activity.php b/Zotlabs/Lib/Activity.php
index 9ba145bfa..58f63a2a5 100644
--- a/Zotlabs/Lib/Activity.php
+++ b/Zotlabs/Lib/Activity.php
@@ -2399,6 +2399,16 @@ class Activity {
$s['obj']['actor'] = $s['obj']['actor']['id'];
}
+ if (is_array($act->tgt) && $act->tgt) {
+ if (array_key_exists('type', $act->tgt)) {
+ $s['tgt_type'] = self::activity_obj_mapper($act->tgt['type']);
+ }
+ // We shouldn't need to store collection contents which could be large. We will often only require the meta-data
+ if (isset($s['tgt_type']) && str_contains($s['tgt_type'], 'Collection')) {
+ $s['target'] = ['id' => $act->tgt['id'], 'type' => $s['tgt_type'], 'attributedTo' => $act->tgt['attributedTo'] ?? $act->tgt['actor']];
+ }
+ }
+
$generator = $act->get_property_obj('generator');
if ((!$generator) && (!$response_activity)) {
$generator = $act->get_property_obj('generator', $act->obj);
diff --git a/Zotlabs/Lib/ThreadItem.php b/Zotlabs/Lib/ThreadItem.php
index d21d85105..90a3d3fc8 100644
--- a/Zotlabs/Lib/ThreadItem.php
+++ b/Zotlabs/Lib/ThreadItem.php
@@ -544,7 +544,8 @@ class ThreadItem {
'moderate_delete' => t('Delete'),
'rtl' => in_array($item['lang'], rtl_languages()),
'reactions_allowed' => $reactions_allowed,
- 'reaction_str' => [t('Add yours'), t('Remove yours')]
+ 'reaction_str' => [t('Add yours'), t('Remove yours')],
+ 'is_contained' => $this->is_toplevel() && str_contains($item['tgt_type'], 'Collection')
);
$arr = array('item' => $item, 'output' => $tmp_item);