📄 formiface.lua
字号:
#!/usr/bin/lua-- Copyright (C) 2008 OpenRB.comrequire('fslib')data = datajson()cfgvars = { values = {}, params = {}, classes = {}} -- get list of classesqoscfg = uci.init('qos')for name, section in pairs(qoscfg) do if (section['.type'] == 'class') then cfgvars['classes'][ name ] = { avgrate = (section['avgrate'] ~= nil and section['avgrate'] or 0), maxrate = (section['maxrate'] ~= nil and section['maxrate'] or 100) } endendif (data ~= nil and data['id'] ~= nil) then cfg = uci.init('qos', data['id']) cfgvars['params']['id'] = data['id'] -- set "default" default class cfgvars['values']['defaultcls'] = cfgvars['classes']['Normal'] ~= nil and 'Normal' or '' if (cfg ~= nil) then cfgvars['values']['name'] = data['id'] fields = {'overhead', 'download', 'upload'} for _, field in ipairs(fields) do if (cfg[field] ~= nil) then cfgvars['values'][field] = cfg[field] end end -- get current interface class list if (cfg['classgroup'] ~= nil) then clscfg = uci.init('qos', cfg['classgroup']) if (clscfg ~= nil) then defaultcls = clscfg['default'] clslisttxt = clscfg['classes'] if (defaultcls ~= nil) then cfgvars['values']['defaultcls'] = defaultcls end if (clslisttxt ~= nil) then clslist = split(clslisttxt, ' ') for _, clsname in ipairs(clslist) do cfgvars['values'][ 'cls_' .. clsname ] = clsname end end end end end -- get ifname for given interface netcfg = uci.init('network', data['id']) cfgvars['values']['ifname'] = (netcfg ~= nil and netcfg['ifname'] or '') cfgvars['values']['type'] = (netcfg ~= nil and netcfg['type'] or '') endio.write(json.encode(cfgvars))
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -