diff options
author | Mario <mario@mariovavti.com> | 2022-02-03 11:57:47 +0000 |
---|---|---|
committer | Mario <mario@mariovavti.com> | 2022-02-03 11:57:47 +0000 |
commit | 99dcdee67ab3521bd3e5e58ba4a85182b7a44890 (patch) | |
tree | b5d5016838963c5d46d34b8c15c6fd6e56bad522 /Zotlabs/Lib | |
parent | 99928f1aeae088d1848e1fda870dcf07d91b9683 (diff) | |
download | volse-hubzilla-99dcdee67ab3521bd3e5e58ba4a85182b7a44890.tar.gz volse-hubzilla-99dcdee67ab3521bd3e5e58ba4a85182b7a44890.tar.bz2 volse-hubzilla-99dcdee67ab3521bd3e5e58ba4a85182b7a44890.zip |
move JSalmon stuff from the data to the meta field in Lib ActivityStreams and some more refinement on storing the raw ap and diaspora data in iconfig
Diffstat (limited to 'Zotlabs/Lib')
-rw-r--r-- | Zotlabs/Lib/Activity.php | 25 | ||||
-rw-r--r-- | Zotlabs/Lib/ActivityStreams.php | 14 | ||||
-rw-r--r-- | Zotlabs/Lib/Libzot.php | 11 |
3 files changed, 24 insertions, 26 deletions
diff --git a/Zotlabs/Lib/Activity.php b/Zotlabs/Lib/Activity.php index 8d3702d10..159f2a46f 100644 --- a/Zotlabs/Lib/Activity.php +++ b/Zotlabs/Lib/Activity.php @@ -2672,35 +2672,34 @@ class Activity { } // old style: can be removed after most hubs are on 7.0.2 - if (!$ap_rawmsg && array_key_exists('signed', $raw_arr) && is_array($act->obj) && is_array($act->obj['attachment'])) { + elseif (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' && + isset($a['type']) && $a['type'] === 'PropertyValue' && isset($a['name']) && $a['name'] === 'zot.activitypub.rawmsg' && isset($a['value']) ) { $ap_rawmsg = $a['value']; - break; + } + + if ( + isset($a['type']) && $a['type'] === 'PropertyValue' && + isset($a['name']) && $a['name'] === 'zot.diaspora.fields' && + isset($a['value']) + ) { + $diaspora_rawmsg = $a['value']; } } } + // catch the likes if (!$ap_rawmsg && $response_activity) { $ap_rawmsg = json_encode($act->data, JSON_UNESCAPED_SLASHES); } // end old style if (!$ap_rawmsg && array_key_exists('signed', $raw_arr)) { - //zap - if (isset($act->data['signer'])) - unset($act->data['signer']); - - if (isset($act->data['signed_data'])) - unset($act->data['signed_data']); - - if (isset($act->data['hubloc'])) - unset($act->data['hubloc']); - + // zap $ap_rawmsg = json_encode($act->data, JSON_UNESCAPED_SLASHES); } diff --git a/Zotlabs/Lib/ActivityStreams.php b/Zotlabs/Lib/ActivityStreams.php index ffb034bf4..b86203a34 100644 --- a/Zotlabs/Lib/ActivityStreams.php +++ b/Zotlabs/Lib/ActivityStreams.php @@ -11,6 +11,7 @@ class ActivityStreams { public $raw = null; public $data = null; + public $meta = null; public $valid = false; public $deleted = false; public $id = ''; @@ -56,15 +57,14 @@ class ActivityStreams { if (is_array($this->data) && array_key_exists('signed', $this->data)) { $ret = JSalmon::verify($this->data); $tmp = JSalmon::unpack($this->data['data']); - if ($ret && $ret['success']) { if ($ret['signer']) { $saved = json_encode($this->data, JSON_UNESCAPED_SLASHES); $this->data = $tmp; - $this->data['signer'] = $ret['signer']; - $this->data['signed_data'] = $saved; + $this->meta['signer'] = $ret['signer']; + $this->meta['signed_data'] = $saved; if ($ret['hubloc']) { - $this->data['hubloc'] = $ret['hubloc']; + $this->meta['hubloc'] = $ret['hubloc']; } } } @@ -348,10 +348,10 @@ class ActivityStreams { if ($ret['signer']) { $saved = json_encode($x, JSON_UNESCAPED_SLASHES); $x = $tmp; - $x['signer'] = $ret['signer']; - $x['signed_data'] = $saved; + $x['meta']['signer'] = $ret['signer']; + $x['meta']['signed_data'] = $saved; if ($ret['hubloc']) { - $x['hubloc'] = $ret['hubloc']; + $x['meta']['hubloc'] = $ret['hubloc']; } } } diff --git a/Zotlabs/Lib/Libzot.php b/Zotlabs/Lib/Libzot.php index 8f08e42d3..e78cb4568 100644 --- a/Zotlabs/Lib/Libzot.php +++ b/Zotlabs/Lib/Libzot.php @@ -1296,9 +1296,8 @@ class Libzot { } } } - - if ($AS->data['signed_data']) { - IConfig::Set($arr, 'activitypub', 'signed_data', $AS->data['signed_data'], false); + if ($AS->meta['signed_data']) { + IConfig::Set($arr, 'activitypub', 'signed_data', $AS->meta['signed_data'], false); } logger('Activity received: ' . print_r($arr, true), LOGGER_DATA, LOG_DEBUG); @@ -1989,9 +1988,9 @@ class Libzot { $arr['item_verified'] = true; } - if ($AS->data['signed_data']) { - IConfig::Set($arr, 'activitypub', 'signed_data', $AS->data['signed_data'], false); - $j = json_decode($AS->data['signed_data'], true); + if ($AS->meta['signed_data']) { + IConfig::Set($arr, 'activitypub', 'signed_data', $AS->meta['signed_data'], false); + $j = json_decode($AS->meta['signed_data'], true); if ($j) { IConfig::Set($arr, 'activitypub', 'rawmsg', json_encode(JSalmon::unpack($j['data'])), true); } |