diff options
author | Mario <mario@mariovavti.com> | 2020-02-27 10:22:48 +0100 |
---|---|---|
committer | Mario <mario@mariovavti.com> | 2020-02-27 10:22:48 +0100 |
commit | 7cf73e0533a61270c9bc5036c3da0e4ea4c593c5 (patch) | |
tree | 8dc4892673a8703d2191cb2fe1ecf3b0dbd09c81 /include | |
parent | 03e9ed71b4d0424c0dec103ada46cbd40d018b45 (diff) | |
parent | 85cf25a2a8bfbbfe10de485d4affd54626fbbfa4 (diff) | |
download | volse-hubzilla-7cf73e0533a61270c9bc5036c3da0e4ea4c593c5.tar.gz volse-hubzilla-7cf73e0533a61270c9bc5036c3da0e4ea4c593c5.tar.bz2 volse-hubzilla-7cf73e0533a61270c9bc5036c3da0e4ea4c593c5.zip |
Merge branch 'dev' into 'dev'
add iconfig to zot6 objects
See merge request hubzilla/core!1835
Diffstat (limited to 'include')
-rw-r--r-- | include/channel.php | 31 |
1 files changed, 29 insertions, 2 deletions
diff --git a/include/channel.php b/include/channel.php index 66ab56715..991d4675b 100644 --- a/include/channel.php +++ b/include/channel.php @@ -878,11 +878,38 @@ function identity_basic_export($channel_id, $sections = null, $zap_compat = fals $ret['abook'] = $r; for($x = 0; $x < count($ret['abook']); $x ++) { + $xchans[] = $ret['abook'][$x]['abook_xchan']; + $my_perms = []; + $their_perms = []; + $newconfig = []; $abconfig = load_abconfig($channel_id,$ret['abook'][$x]['abook_xchan']); - if($abconfig) - $ret['abook'][$x]['abconfig'] = $abconfig; + if($abconfig) { + foreach ($abconfig as $abc) { + + if ($abc['cat'] === 'my_perms' && intval($abc['v'])) { + $my_perms[] = $abc['k']; + continue; + } + if ($abc['cat'] === 'their_perms' && intval($abc['v'])) { + $their_perms[] = $abc['k']; + continue; + } + if ($zap_compat && preg_match('|^a:[0-9]+:{.*}$|s', $abc['v'])) { + $abc['v'] = serialise(unserialize($abc['v'])); + } + $newconfig[] = $abc; + } + + $ret['abook'][$x]['abconfig'] = $newconfig; + if ($zap_compat) { + $ret['abook'][$x]['abconfig'][] = [ 'chan' => $channel_id, 'xchan' => $ret['abook'][$x]['abook_chan'], 'cat' => 'system', 'k' => 'my_perms', 'v' => implode(',',$my_perms) ]; + $ret['abook'][$x]['abconfig'][] = [ 'chan' => $channel_id, 'xchan' => $ret['abook'][$x]['abook_chan'], 'cat' => 'system', 'k' => 'their_perms', 'v' => implode(',',$their_perms) ]; + } + } + translate_abook_perms_outbound($ret['abook'][$x]); + } // pick up the zot6 xchan and hublocs also |