if (!$vbulletin->GPC['nodeid']) { print_stop_message2('invalid_channel_specified'); } try { $channel = vB_Library::instance('node')->getNode($vbulletin->GPC['nodeid']); if ($channel['parentid'] == 0) { print_stop_message2('invalid_channel_specified'); } } catch (exception $e) { print_stop_message2('invalid_channel_specified'); } switch ($vbulletin->GPC['type']) { case 'reset': vB::getDbAssertor()->assertQuery('vBForum:permission', array(vB_dB_Query::TYPE_KEY => vB_dB_Query::QUERY_DELETE, 'nodeid' => $vbulletin->GPC['nodeid'])); // If the nodeid is in default permissions, we need to copy default permissions back to permission table $defaultpermissions = vB_ChannelPermission::loadDefaultChannelPermissions(); if (!empty($defaultpermissions["node_" . $vbulletin->GPC['nodeid']])) { foreach ($defaultpermissions["node_" . $vbulletin->GPC['nodeid']] as $groupid => $perm) { $groupid = str_replace('group_', '', $groupid); $params = array(); $params[vB_dB_Query::TYPE_KEY] = vB_dB_Query::QUERY_INSERT; $params['nodeid'] = $vbulletin->GPC['nodeid']; $params['groupid'] = intval($groupid); foreach ($perm as $k => $v) { $params[$k] = $v; } $id = vB::getDbAssertor()->assertQuery('vBForum:permission', $params); } } break; case 'deny':