Skip to content
Snippets Groups Projects
Select Git revision
  • d4fc87ae25ce74bba48dbf0a220db3c0328df129
  • experimental default protected
  • v2023.2.5-ffs
  • nrb/ex400-remove-wps
  • nrb/airmax-test
  • v2023.2.4-ffs
  • nrb/ar9344-reset-sequence
  • autinerd/experimental-openwrt-24.10
  • v2023.2.3-ffs
  • v2023.2.2-ffs
  • v2023.2-ffs
  • v2023.1-ffs
  • v2022.1.4-ffs
  • feature/addMikrotikwAP
  • v2022.1.3-ffs
  • v2021.1.2-ffs
  • v2022.1.1-ffs
  • master protected
  • v2021.1.1-ffs
  • nrb/gluon-master-cpe510
  • v2021.1-ffs
  • experimental-2025-08-13
  • experimental-2025-08-13-base
  • experimental-2025-08-04
  • experimental-2025-08-04-base
  • experimental-2025-07-31
  • experimental-2025-07-31-base
  • experimental-2025-07-29
  • experimental-2025-07-29-base
  • experimental-2025-07-28
  • experimental-2025-07-28-base
  • experimental-2025-07-26
  • experimental-2025-07-26-base
  • experimental-2025-07-24
  • experimental-2025-07-24-base
  • experimental-2025-07-22
  • experimental-2025-07-22-base
  • experimental-2025-07-21
  • experimental-2025-07-21-base
  • experimental-2025-07-20
  • experimental-2025-07-20-base
41 results

build.rst

Blame
  • status-page.html 8.66 KiB
    <%-
    	local iwinfo = require 'iwinfo'
    	local ubus = require 'ubus'
    	local unistd = require 'posix.unistd'
    	local util = require 'gluon.util'
    	local wireless = require 'gluon.wireless'
    
    	local uci = require('simple-uci').cursor()
    
    	local translations = {}
    	local site_i18n = i18n 'gluon-site'
    
    	local function _(v)
    		translations[v] = translate(v)
    	end
    
    	-- i18n strings for JavaScript
    	_('.') -- decimal point
    	_('connected')
    	_('not connected')
    	_('1 day')
    	_('%s days')
    	_('%s used')
    	_('%s packets/s')
    
    	local function get_mesh()
    		local f = loadfile('/lib/gluon/status-page/mesh.lua')
    		if f then
    			return f()
    		end
    		return {}
    	end
    
    	local mesh = get_mesh()
    
    	local function get_interfaces(uconn)
    		local interfaces = util.get_mesh_devices(uconn)
    		table.sort(interfaces)
    		return interfaces
    	end
    
    	local function get_radios()
    		local ret = {}
    
    		wireless.foreach_radio(uci, function(radio)
    			local channel = iwinfo.nl80211.channel(wireless.find_phy(radio))
    			if channel then
    				table.insert(ret, {
    					name = radio['.name'],
    					channel = channel,
    				})
    			end
    		end)
    		table.sort(ret, function(a, b)
    			return a.name < b.name
    		end)
    
    		return ret
    	end
    
    	local function is_wireless(iface)
    		while true do
    			local pattern = '/sys/class/net/' .. iface .. '/lower_*'
    			local lower = util.glob(pattern)[1]
    			if not lower then break end
    
    			iface = lower:sub(pattern:len())
    		end
    
    		return unistd.access('/sys/class/net/' .. iface .. '/wireless') ~= nil