EVOLUTION-MANAGER
Edit File: multi_select.lua
-- -- (C) 2019-24 - ntop.org -- -- ############################################## package.path = dirs.installdir .. "/scripts/lua/modules/?.lua;" .. package.path package.path = dirs.installdir .. "/scripts/lua/modules/check_templates/?.lua;" .. package.path -- Import the classes library. local classes = require "classes" -- Make sure to import the Superclass! local check_template = require "check_template" local http_lint = require "http_lint" -- ############################################## local multi_select = classes.class(check_template) -- ############################################## multi_select.meta = { } -- ############################################## -- @brief Prepare an instance of the template -- @return A table with the template built function multi_select:init(check) -- Call the parent constructor self.super:init(check) end -- ####################################################### function multi_select:parseConfig(conf) return http_lint.validateListItems(self._check, conf) end -- ####################################################### function multi_select:describeConfig(hooks_conf) if (not hooks_conf.all) then return '' -- disabled, nothing to show end local conf = hooks_conf.all.script_conf local msg = '' if not table.empty(conf.items) then local temp_msg = {} local groups = self._check.gui.groups -- build a string containing selected elements separated by comma for _, group in ipairs(groups) do local elements = group.elements for _, element in ipairs(elements) do local id = element[1] local label = element[2] if table.has_key(conf.items, id) then -- if the label is nil then use the id table.insert(temp_msg, label or id) end end end msg = table.concat(temp_msg, ', ') end return (msg) end -- ####################################################### return multi_select