} // Check permission and write message to log file. if (!is_admin()) { // Cleanup. DataExchange::releaseResources(); display_error_page($smarty, new NotAdminError()); exit(1); } call_user_func(Logging::$f['EDIT_USER_GROUPS_USE']); $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; } }
$search_boards = $boards; } else { foreach ($search['boards'] as $id) { $id = boards_check_id($id); foreach ($boards as &$board) { if ($board['id'] == $id) { // Fake field what means what board selected to search. $board = array_merge($board, array('selected' => true)); array_push($search_boards, $board); break; } } } } // Search. $posts = posts_search_visible_by_boards($search_boards, $keyword, users_check_id($_SESSION['user'])); // Assign total founded posts count here. $smarty->assign('count', count($posts)); // Calculate page count. $page_max = ceil(count($posts) / $posts_per_page); if ($page_max == 0) { $page_max = 1; } if ($page > $page_max) { // Cleanup. DataExchange::releaseResources(); display_error_page($smarty, new MaxPageError($page)); exit(1); } $pages = range(1, $page_max); // Select posts only from correspond page.