function spa_save_forums_delete_perm() { check_admin_referer('forum-adminform_permissiondelete', 'forum-adminform_permissiondelete'); $permission_id = sp_esc_int($_POST['permission_id']); # remove the permission set from the forum $success = spa_remove_permission_data($permission_id); if ($success == false) { $mess = spa_text('Permission set delete failed'); } else { $mess = spa_text('Permission set deleted'); # reset auths and memberships for everyone sp_reset_memberships(); sp_reset_auths(); do_action('sph_forum_perm_del', $permission_id); } # clear out group cache tpo enable change_user sp_flush_cache('group'); return $mess; }
function spa_save_usergroups_delete_usergroup() { check_admin_referer('forum-adminform_usergroupdelete', 'forum-adminform_usergroupdelete'); $usergroup_id = sp_esc_int($_POST['usergroup_id']); # dont allow updates to the default user groups $usergroup = spa_get_usergroups_row($usergroup_id); if ($usergroup->usergroup_locked) { $mess = spa_text('Sorry, the default User Groups cannot be deleted'); return $mess; } # remove all memberships for this user group spdb_query("DELETE FROM " . SFMEMBERSHIPS . " WHERE usergroup_id=" . $usergroup_id); # remove any permission sets using this user group $permissions = spdb_table(SFPERMISSIONS, "usergroup_id={$usergroup_id}"); if ($permissions) { foreach ($permissions as $permission) { spa_remove_permission_data($permission->permission_id); } } # remove any group default permissions using this user group spdb_query("DELETE FROM " . SFDEFPERMISSIONS . " WHERE usergroup_id=" . $usergroup_id); # remove the user group spdb_query("DELETE FROM " . SFMEMBERSHIPS . " WHERE usergroup_id=" . $usergroup_id); $success = spdb_query("DELETE FROM " . SFUSERGROUPS . " WHERE usergroup_id=" . $usergroup_id); if ($success == false) { $mess = spa_text('User group delete failed'); } else { $mess = spa_text('User group deleted'); # reset auths and memberships for everyone sp_reset_memberships(); sp_reset_auths(); do_action('sph_usergroup_del', $usergroup_id); } return $mess; }
function spa_save_permissions_delete_role() { check_admin_referer('forum-adminform_roledelete', 'forum-adminform_roledelete'); $role_id = sp_esc_int($_POST['role_id']); # remove all permission set that use the role we are deleting $permissions = spdb_table(SFPERMISSIONS, "permission_role={$role_id}"); if ($permissions) { foreach ($permissions as $permission) { spa_remove_permission_data($permission->permission_id); } } # reset auths and memberships for everyone sp_reset_memberships(); sp_reset_auths(); # remove the permission set role $success = spdb_query('DELETE FROM ' . SFROLES . " WHERE role_id={$role_id}"); if ($success == false) { $mess = spa_text('Permission det deletion failed'); } else { do_action('sph_perms_del', $role_id); $mess = spa_text('Permission set deleted'); } return $mess; }