issues uncovered testing permissions endpoint

This commit is contained in:
Mike Macgirvin 2024-04-27 12:44:49 +10:00
parent b0b993dc00
commit 14adcc7a9d

View file

@ -36,24 +36,14 @@ class Permissions extends Controller
}
$observer_hash = get_observer_hash();
$myPerms = explode(',',
AbConfig::Get($channel['channel_id'], $observer_hash, 'system', 'my_perms', ''));
if (!$myPerms) {
$myPerms = get_all_perms($channel['channel_id'], $observer_hash);
if ($observer_hash) {
$myPerms['connected'] = false;
$b = q(
"select * from abook where abook_xchan = '%s' and abook_channel = %d limit 1",
dbesc($observer_hash),
intval($channel['channel_id'])
);
if ($b) {
$myPerms['connected'] = true;
}
}
if ($observer_hash !== $channel['channel_hash']) {
$permissions = AbConfig::Get($channel['channel_id'], $observer_hash, 'system', 'my_perms', '');
}
if ($permissions) {
$myPerms = explode(',', $permissions);
}
else {
$myPerms = get_all_perms($channel['channel_id'], $observer_hash === $channel['channel_hash'] ? $channel['channel_hash'] : '');
$concise_perms = [];
if ($myPerms) {
foreach ($myPerms as $k => $v) {
@ -64,6 +54,7 @@ class Permissions extends Controller
$myPerms = $concise_perms;
}
}
$ret = Activity::encode_simple_collection(Activity::map_permissions($myPerms), Channel::getDidResolver($channel) . '/permissions', 'Collection',
count($myPerms));
as_return_and_die($ret, $channel);