Developing lightweight computation at the DSG edge

advanced.lua 2.08 KB
Newer Older
1
--[[
2
    Copyright (C) 2011 Pau Escrich <pau@dabax.net>
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation, Inc.,
    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

    The full GNU General Public License is included in this distribution in
    the file called "COPYING".
--]]

22
23
24
25
26
27
28
29
m = Map("bmx6", "bmx6")

local bmx6json = require("luci.model.bmx6json")
local util = require("luci.util")
local http = require("luci.http")
local sys = require("luci.sys")

local options = bmx6json.get("options")
30
31
if options == nil or options.OPTIONS == nil then
	m.message = "bmx6-json plugin is not running or some mistake in luci-bmx6 configuration, check /etc/config/luci-bmx6"
32
33
34
35
36
37
38
39
40
41
	options = {}
else
	options = options.OPTIONS
end

local general = m:section(NamedSection,"general","general","General Options")

local name = ""
local help = ""
local value = nil
42
local _,o
43

44
for _,o in ipairs(options) do
45
	if o.name ~= nil and o.CHILD_OPTIONS == nil and o.configurable == 1 then
46
47
48
		help = ""
		name = o.name

49
50
		if o.help ~= nil then
			help = bmx6json.text2html(o.help)
51
52
		end

53
54
		if o.syntax ~= nil then
			help = help .. "<br/><strong>Syntax: </strong>" .. bmx6json.text2html(o.syntax)
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
		end

		if o.def ~= nil then
			help = help .. "<strong> Default: </strong>" .. o.def
		end

		value = general:option(Value,name,name,help)

	end
end

function m.on_commit(self,map)
	local err = sys.call('bmx6 -c --configReload > /tmp/bmx6-luci.err.tmp')
	if err ~= 0 then
		m.message = sys.exec("cat /tmp/bmx6-luci.err.tmp")
	end
end

return m