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