. * * @package LibreNMS * @link http://librenms.org * @copyright 2018 Tony Murray * @author Tony Murray */ if (!Auth::user()->hasGlobalRead()) { return []; } $query = ''; $params = []; if (!empty($_REQUEST['search'])) { $query .= ' WHERE `name` LIKE ?'; $params[] = '%' . mres($_REQUEST['search']) . '%'; } $total = dbFetchCell("SELECT COUNT(*) FROM `device_groups` $query", $params); $more = false; if (!empty($_REQUEST['limit'])) { $limit = (int) $_REQUEST['limit']; $page = isset($_REQUEST['page']) ? (int) $_REQUEST['page'] : 1; $offset = ($page - 1) * $limit; $query .= " LIMIT $offset, $limit"; } else { $offset = 0; } $sql = "SELECT `id`, `name` AS `text` FROM `device_groups` $query order by `name`"; $groups = dbFetchRows($sql, $params); $more = ($offset + count($groups)) < $total; return [$groups, $more];