summaryrefslogtreecommitdiffhomepage
path: root/modules/admin-full/luasrc
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2009-07-10 22:02:30 +0000
committerJo-Philipp Wich <jow@openwrt.org>2009-07-10 22:02:30 +0000
commit75e8d0bf4b4ec4ce84aa429b7dae7c2e75bb733e (patch)
treee3c02dd9bdc888c82b6f4f9ff0ba238289ec0823 /modules/admin-full/luasrc
parent07c0f405f3341cdfa11a8437c592fec5ff699f81 (diff)
modules/admin-full: reimplement conntrack page as template
Diffstat (limited to 'modules/admin-full/luasrc')
-rw-r--r--modules/admin-full/luasrc/controller/admin/status.lua2
-rw-r--r--modules/admin-full/luasrc/model/cbi/admin_status/conntrack.lua49
-rw-r--r--modules/admin-full/luasrc/view/admin_status/conntrack.htm79
3 files changed, 80 insertions, 50 deletions
diff --git a/modules/admin-full/luasrc/controller/admin/status.lua b/modules/admin-full/luasrc/controller/admin/status.lua
index 57496be92..5d2df9c41 100644
--- a/modules/admin-full/luasrc/controller/admin/status.lua
+++ b/modules/admin-full/luasrc/controller/admin/status.lua
@@ -20,7 +20,7 @@ function index()
entry({"admin", "status"}, template("admin_status/index"), i18n("status", "Status"), 20).index = true
entry({"admin", "status", "interfaces"}, template("admin_status/interfaces"), i18n("interfaces", "Interfaces"), 1)
entry({"admin", "status", "iptables"}, call("action_iptables"), i18n("a_s_ipt", "Firewall"), 2)
- entry({"admin", "status", "conntrack"}, form("admin_status/conntrack"), i18n("a_n_conntrack"), 3)
+ entry({"admin", "status", "conntrack"}, template("admin_status/conntrack"), i18n("a_n_conntrack"), 3)
entry({"admin", "status", "routes"}, template("admin_status/routes"), i18n("a_n_routes"), 4)
entry({"admin", "status", "syslog"}, call("action_syslog"), i18n("syslog", "System Log"), 5)
entry({"admin", "status", "dmesg"}, call("action_dmesg"), i18n("dmesg", "Kernel Log"), 6)
diff --git a/modules/admin-full/luasrc/model/cbi/admin_status/conntrack.lua b/modules/admin-full/luasrc/model/cbi/admin_status/conntrack.lua
deleted file mode 100644
index d970bdf3d..000000000
--- a/modules/admin-full/luasrc/model/cbi/admin_status/conntrack.lua
+++ /dev/null
@@ -1,49 +0,0 @@
---[[
-LuCI - Lua Configuration Interface
-
-Copyright 2008 Steven Barth <steven@midlink.org>
-Copyright 2008 Jo-Philipp Wich <xm@leipzig.freifunk.net>
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-$Id$
-]]--
-
-f = SimpleForm("conntrack", translate("a_n_conntrack"), translate("a_n_conntrack_desc"))
-f.reset = false
-f.submit = false
-
-t = f:section(Table, luci.sys.net.arptable(), "ARP")
-t:option(DummyValue, "IP address", translate("ipaddress"))
-t:option(DummyValue, "HW address", translate("macaddress"))
-t:option(DummyValue, "Device", translate("interface"))
-
-t = f:section(Table, luci.sys.net.conntrack() or {}, translate("a_n_conntrack"))
-l3 = t:option(DummyValue, "layer3", translate("network"))
-function l3.cfgvalue(self, ...)
- return DummyValue.cfgvalue(self, ...):upper()
-end
-
-
-l4 = t:option(DummyValue, "layer4", translate("protocol"))
-function l4.cfgvalue(self, ...)
- return DummyValue.cfgvalue(self, ...):upper()
-end
-
-s = t:option(DummyValue, "src", translate("source"))
-function s.cfgvalue(self, section)
- return "%s:%s" % { self.map:get(section, "src"),
- self.map:get(section, "sport") or "*" }
-end
-
-d = t:option(DummyValue, "dst", translate("destination"))
-function d.cfgvalue(self, section)
- return "%s:%s" % { self.map:get(section, "dst"),
- self.map:get(section, "dport") or "*" }
-end
-
-return f
diff --git a/modules/admin-full/luasrc/view/admin_status/conntrack.htm b/modules/admin-full/luasrc/view/admin_status/conntrack.htm
new file mode 100644
index 000000000..663117308
--- /dev/null
+++ b/modules/admin-full/luasrc/view/admin_status/conntrack.htm
@@ -0,0 +1,79 @@
+<%#
+LuCI - Lua Configuration Interface
+Copyright 2008-2009 Steven Barth <steven@midlink.org>
+Copyright 2008-2009 Jo-Philipp Wich <xm@subsignal.org>
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+$Id$
+
+-%>
+
+<%-
+ require "bit"
+ require "luci.fs"
+ require "luci.sys"
+ require "luci.tools.webadmin"
+
+ local style = true
+-%>
+
+<%+header%>
+
+<div class="cbi-map" id="cbi-conntrack">
+ <h2><a id="content" name="content"><%:a_n_conntrack%></a></h2>
+ <div class="cbi-map-descr"><%:a_n_conntrack_desc%></div>
+
+ <fieldset class="cbi-section" id="cbi-table-table">
+ <legend>ARP</legend>
+ <div class="cbi-section-node">
+ <table class="cbi-section-table">
+ <tr class="cbi-section-table-titles">
+ <th class="cbi-section-table-cell"><%:ipaddress%></th>
+ <th class="cbi-section-table-cell"><%:macaddress%></th>
+ <th class="cbi-section-table-cell"><%:interface%></th>
+ </tr>
+
+ <% luci.sys.net.arptable(function(e) %>
+ <tr class="cbi-section-table-row cbi-rowstyle-<%=(style and 1 or 2)%>">
+ <td class="cbi-value-field"><%=e["IP address"]%></td>
+ <td class="cbi-value-field"><%=e["HW address"]%></td>
+ <td class="cbi-value-field"><%=e["Device"]%></td>
+ </tr>
+ <% style = not style; end) %>
+ </table>
+ </div>
+ </fieldset>
+ <br />
+
+ <fieldset class="cbi-section" id="cbi-table-table">
+ <legend><%:a_n_conntrack%></legend>
+ <div class="cbi-section-node">
+ <table class="cbi-section-table">
+ <tr class="cbi-section-table-titles">
+ <th class="cbi-section-table-cell"><%:network%></th>
+ <th class="cbi-section-table-cell"><%:protocol%></th>
+ <th class="cbi-section-table-cell"><%:source%></th>
+ <th class="cbi-section-table-cell"><%:destination%></th>
+ </tr>
+
+ <% style = true; luci.sys.net.conntrack(function(c) %>
+ <tr class="cbi-section-table-row cbi-rowstyle-<%=(style and 1 or 2)%>">
+ <td class="cbi-value-field"><%=c.layer3:upper()%></td>
+ <td class="cbi-value-field"><%=c.layer4:upper()%></td>
+ <td class="cbi-value-field"><%=c.src%></td>
+ <td class="cbi-value-field"><%=c.dst%></td>
+ </tr>
+ <% style = not style; end) %>
+ </table>
+ </div>
+ </fieldset>
+ <br />
+</div>
+
+<%+footer%>
+