feb0802e5169911ef16cdded7045d1eb10663e5a
[project/luci.git] / modules / admin-full / luasrc / controller / admin / status.lua
1 --[[
2 LuCI - Lua Configuration Interface
3
4 Copyright 2008 Steven Barth <steven@midlink.org>
5
6 Licensed under the Apache License, Version 2.0 (the "License");
7 you may not use this file except in compliance with the License.
8 You may obtain a copy of the License at
9
10         http://www.apache.org/licenses/LICENSE-2.0
11
12 $Id$
13 ]]--
14 module("luci.controller.admin.status", package.seeall)
15
16 function index()
17         luci.i18n.loadc("admin-core")
18         local i18n = luci.i18n.translate
19
20         entry({"admin", "status"}, template("admin_status/index"), i18n("status", "Status"), 20).index = true
21         entry({"admin", "status", "interfaces"}, template("admin_status/interfaces"), i18n("interfaces", "Interfaces"), 1)
22         entry({"admin", "status", "iptables"}, call("action_iptables"), i18n("a_s_ipt", "Firewall"), 2)
23         entry({"admin", "status", "syslog"}, call("action_syslog"), i18n("syslog", "System Log"), 3)
24         entry({"admin", "status", "dmesg"}, call("action_dmesg"), i18n("dmesg", "Kernel Log"), 4)
25
26 end
27
28 function action_syslog()
29         local syslog = luci.sys.syslog()
30         luci.template.render("admin_status/syslog", {syslog=syslog})
31 end
32
33 function action_dmesg()
34         local dmesg = luci.sys.dmesg()
35         luci.template.render("admin_status/dmesg", {dmesg=dmesg})
36 end
37
38 function action_iptables()
39         if luci.http.formvalue("zero") == "1" then
40                 luci.util.exec("iptables -Z")
41                 luci.http.redirect(
42                         luci.dispatcher.build_url("admin", "status", "iptables")
43                 )
44         elseif luci.http.formvalue("restart") == "1" then
45                 luci.util.exec("/etc/init.d/firewall restart")
46                 luci.http.redirect(
47                         luci.dispatcher.build_url("admin", "status", "iptables")
48                 )
49         else
50                 luci.template.render("admin_status/iptables")
51         end
52 end