clone channel perms

This commit is contained in:
redmatrix
2016-07-17 22:18:35 -07:00
parent de4f9d68bd
commit f7833411a1
2 changed files with 71 additions and 1 deletions

View File

@@ -62,3 +62,60 @@ function perm_abook_upgrade($abook) {
function translate_channel_perms_outbound(&$channel) {
$r = q("select * from pconfig where uid = %d and cat = 'perm_limits' ",
intval($channel['channel_id'])
);
if($r) {
foreach($r as $rr) {
if($rr['k'] === 'view_stream')
$channel['channel_r_stream'] = $rr['v'];
if($rr['k'] === 'view_profile')
$channel['channel_r_profile'] = $rr['v'];
if($rr['k'] === 'view_contacts')
$channel['channel_r_abook'] = $rr['v'];
if($rr['k'] === 'view_storage')
$channel['channel_r_storage'] = $rr['v'];
if($rr['k'] === 'view_pages')
$channel['channel_r_pages'] = $rr['v'];
if($rr['k'] === 'send_stream')
$channel['channel_w_stream'] = $rr['v'];
if($rr['k'] === 'post_wall')
$channel['channel_w_wall'] = $rr['v'];
if($rr['k'] === 'post_comments')
$channel['channel_w_comment'] = $rr['v'];
if($rr['k'] === 'post_mail')
$channel['channel_w_mail'] = $rr['v'];
if($rr['k'] === 'post_like')
$channel['channel_w_like'] = $rr['v'];
if($rr['k'] === 'tag_deliver')
$channel['channel_w_tagwall'] = $rr['v'];
if($rr['k'] === 'chat')
$channel['channel_w_chat'] = $rr['v'];
if($rr['k'] === 'write_storage')
$channel['channel_w_storage'] = $rr['v'];
if($rr['k'] === 'write_pages')
$channel['channel_w_pages'] = $rr['v'];
if($rr['k'] === 'republish')
$channel['channel_a_republish'] = $rr['v'];
if($rr['k'] === 'delegate')
$channel['channel_a_delegate'] = $rr['v'];
}
$channel['perm_limits'] = $r;
}
}
function translate_channel_perms_inbound($channel) {
if($channel['perm_limits']) {
foreach($channel['perm_limits'] as $p) {
set_pconfig($channel['channel_id'],'perm_limits',$p['k'],$p['v']);
}
}
else {
perm_limits_upgrade($channel);
}
}