-- -- (C) 2013-24 - ntop.org -- local dirs = ntop.getDirs() package.path = dirs.installdir .. "/scripts/lua/modules/?.lua;" .. package.path require "lua_utils" local page_utils = require("page_utils") local host_pools_nedge = require "host_pools_nedge" local prefs = ntop.getPrefs() local captive_portal_utils = {} -- ############################################## function captive_portal_utils.is_logged(ip) local member = ip interface.select("0") local host_info = interface.getHostInfo(member) if not host_info then return false end local pool_id = host_info.host_pool_id if tonumber(pool_id) == host_pools_nedge.DEFAULT_POOL_ID then -- already logged out return false end return true end -- ############################################## function captive_portal_utils.logout(ip) local member = ip interface.select("0") local host_info = interface.getHostInfo(member) if not host_info then return end local pool_id = host_info.host_pool_id if tonumber(pool_id) == host_pools_nedge.DEFAULT_POOL_ID then -- already logged out return end if prefs.is_mac_based_captive_portal then member = host_info.mac if not member then return -- unable to find mac end end host_pools_nedge.deletePoolMember(member) ntop.reloadHostPools() end -- ############################################## function captive_portal_utils.get_style() return [[ ]] end -- ############################################## function captive_portal_utils.print_header() sendHTTPContentTypeHeader('text/html') page_utils.print_header_minimal() print [[
]] print(captive_portal_utils.get_style()) print [[
]] end -- ############################################## function captive_portal_utils.print_footer() print [[
]] end -- ############################################## return captive_portal_utils