luci-app-vpn-policy-routing: don't clobber permissions of VPN menu
[oweals/luci.git] / applications / luci-app-vpn-policy-routing / luasrc / controller / vpn-policy-routing.lua
1 module("luci.controller.vpn-policy-routing", package.seeall)
2 function index()
3         if nixio.fs.access("/etc/config/vpn-policy-routing") then
4                 local e = entry({"admin", "vpn"}, firstchild(), _("VPN"), 60)
5                 e.dependent = false
6
7                 entry({"admin", "vpn", "vpn-policy-routing"}, cbi("vpn-policy-routing"), _("VPN Policy Routing")).acl_depends = { "luci-app-vpn-policy-routing" }
8                 entry({"admin", "vpn", "vpn-policy-routing", "action"}, call("vpn_policy_routing_action"), nil).leaf = true
9         end
10 end
11
12 function vpn_policy_routing_action(name)
13         local packageName = "vpn-policy-routing"
14         if name == "start" then
15                 luci.sys.init.start(packageName)
16         elseif name == "action" then
17                 luci.util.exec("/etc/init.d/" .. packageName .. " restart >/dev/null 2>&1")
18         elseif name == "stop" then
19                 luci.sys.init.stop(packageName)
20         elseif name == "enable" then
21                 luci.util.exec("uci set " .. packageName .. ".config.enabled=1; uci commit " .. packageName)
22         elseif name == "disable" then
23                 luci.util.exec("uci set " .. packageName .. ".config.enabled=0; uci commit " .. packageName)
24         end
25         luci.http.prepare_content("text/plain")
26         luci.http.write("0")
27 end