$groups = groups_get_all(); $users = users_get_all(); $user_groups = user_groups_get_all(); $reload_user_groups = false; // Add new relation. if (isset($_POST['new_bind_user']) && isset($_POST['new_bind_group']) && $_POST['new_bind_user'] != '' && $_POST['new_bind_group'] != '') { $new_bind_user = users_check_id($_POST['new_bind_user']); $new_bind_group = groups_check_id($_POST['new_bind_group']); user_groups_add($new_bind_user, $new_bind_group); $reload_user_groups = true; } // Change relation. foreach ($user_groups as $user_group) { $_ = "group_{$user_group['user']}_{$user_group['group']}"; if (isset($_POST[$_]) && $_POST[$_] != $user_group['group']) { $new_group_id = groups_check_id($_POST[$_]); foreach ($groups as $group) { if ($group['id'] == $new_group_id) { user_groups_edit($user_group['user'], $user_group['group'], $new_group_id); $reload_user_groups = true; } } } } // Delete relation. foreach ($user_groups as $user_group) { if (isset($_POST["delete_{$user_group['user']}_{$user_group['group']}"])) { user_groups_delete($user_group['user'], $user_group['group']); $reload_user_groups = true; } }
// Cleanup. DataExchange::releaseResources(); display_error_page($smarty, new NotAdminError()); exit(1); } call_user_func(Logging::$f['EDIT_ACL_USE']); $groups = groups_get_all(); $boards = boards_get_all(); if (count($acl = acl_get_all()) <= 0) { throw new AclNoRulesException(); } $reload_acl = false; if (isset($_POST['submited'])) { // Add rule. if (isset($_POST['new_group']) && isset($_POST['new_board']) && isset($_POST['new_thread']) && isset($_POST['new_post']) && ($_POST['new_group'] !== '' || $_POST['new_board'] !== '' || $_POST['new_thread'] !== '' || $_POST['new_post'] !== '')) { $new_group = $_POST['new_group'] === '' ? NULL : groups_check_id($_POST['new_group']); $new_board = $_POST['new_board'] === '' ? NULL : boards_check_id($_POST['new_board']); $new_thread = $_POST['new_thread'] === '' ? NULL : threads_check_id($_POST['new_thread']); $new_post = $_POST['new_post'] === '' ? NULL : posts_check_id($_POST['new_post']); $new_view = isset($_POST['new_view']) ? 1 : 0; $new_change = isset($_POST['new_change']) ? 1 : 0; $new_moderate = isset($_POST['new_moderate']) ? 1 : 0; /* * Board, Thread or Post id is unique. If we know one we dont need * know more. */ $_ = array($new_board, $new_thread, $new_post); if (count(array_filter($_, 'is_null')) != 2) { // Cleanup. DataExchange::releaseResources(); Logging::close_log();