. * * @package LibreNMS * @link http://librenms.org * @copyright 2018 Vivia Nguyen-Tran * @author Vivia Nguyen-Tran */ use LibreNMS\Authentication\LegacyAuth; if (!LegacyAuth::user()->hasGlobalRead()) { return []; } $query = ''; $params = []; if (!empty($vars['search'])) { $query .= ' WHERE `transport_name` LIKE ?'; $params[] = '%' . $vars['search'] . '%'; } $total = dbFetchCell("SELECT COUNT(*) FROM `alert_transports` $query", $params); $more = false; if (!empty($_REQUEST['limit'])) { $limit = (int) $vars['limit']; $page = isset($vars['page']) ? (int) $vars['page'] : 1; $offset = ($page - 1) * $limit; $query .= " LIMIT $offset, $limit"; } else { $offset = 0; } $sql = "SELECT `transport_id` AS `id`, `transport_name` AS `text`, `transport_type` AS `type` FROM `alert_transports` $query"; $transports = dbFetchRows($sql, $params); $more = ($offset + count($transports))<$total; $transports = array_map(function ($transport) { $transport['text'] = ucfirst($transport['type']).": ".$transport['text']; unset($transport['type']); return $transport; }, $transports); $data = [['text' => 'Transports', 'children' => $transports]]; return[$data, $more];