aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMario <mario@mariovavti.com>2022-01-27 20:27:02 +0000
committerMario <mario@mariovavti.com>2022-01-27 20:27:02 +0000
commit38ecff1220a6b11261ba9f11edbefb5e5bfaa53b (patch)
treeaf2e83d68914e3ddfd699c6cb271081e6826edf8
parent67e64287afc6c41c80065614f7beebe8a552a76b (diff)
downloadvolse-hubzilla-38ecff1220a6b11261ba9f11edbefb5e5bfaa53b.tar.gz
volse-hubzilla-38ecff1220a6b11261ba9f11edbefb5e5bfaa53b.tar.bz2
volse-hubzilla-38ecff1220a6b11261ba9f11edbefb5e5bfaa53b.zip
some refinement on storing the raw ap message, some comments and make sure the AS->raw is always a json string
-rw-r--r--Zotlabs/Lib/Activity.php21
-rw-r--r--Zotlabs/Lib/ActivityStreams.php1
2 files changed, 16 insertions, 6 deletions
diff --git a/Zotlabs/Lib/Activity.php b/Zotlabs/Lib/Activity.php
index 33183de76..4a5d42026 100644
--- a/Zotlabs/Lib/Activity.php
+++ b/Zotlabs/Lib/Activity.php
@@ -2638,22 +2638,31 @@ class Activity {
}
}
- $rawmsg = '';
+ $zot_rawmsg = '';
+ $raw_arr = [];
- if (is_array($act->obj) && is_array($act->obj['attachment'])) {
+ $raw_arr = json_decode($act->raw, true);
+
+ // This is a zot6 packet and the raw activitypub message json
+ // is possible available in the attachement.
+ if (array_key_exists('signed', $raw_arr) && is_array($act->obj) && is_array($act->obj['attachment'])) {
foreach($act->obj['attachment'] as $a) {
- if (isset($a['type']) && $a['type'] === 'PropertyValue' &&
+ if (
+ isset($a['type']) && $a['type'] === 'PropertyValue' &&
isset($a['name']) && $a['name'] === 'zot.activitypub.rawmsg' &&
isset($a['value'])
) {
- $rawmsg = $a['value'];
+ $zot_rawmsg = $a['value'];
break;
}
}
}
- if ($rawmsg) {
- set_iconfig($s, 'activitypub', 'rawmsg', $rawmsg, 1);
+ if ($zot_rawmsg) {
+ set_iconfig($s, 'activitypub', 'rawmsg', $zot_rawmsg, 1);
+ }
+ else {
+ set_iconfig($s, 'activitypub', 'rawmsg', $act->raw, 1);
}
set_iconfig($s, 'activitypub', 'recips', $act->raw_recips);
diff --git a/Zotlabs/Lib/ActivityStreams.php b/Zotlabs/Lib/ActivityStreams.php
index 09e1679ac..fe2e7610b 100644
--- a/Zotlabs/Lib/ActivityStreams.php
+++ b/Zotlabs/Lib/ActivityStreams.php
@@ -40,6 +40,7 @@ class ActivityStreams {
if (is_array($string)) {
$this->data = $string;
+ $this->raw = json_encode($string, JSON_UNESCAPED_SLASHES);
}
else {
$this->data = json_decode($string, true);