Merge pull request #2174 from rosysong/lease-status
[project/luci.git] / modules / luci-mod-status / luasrc / view / admin_status / iptables.htm
1 <%#
2 Copyright 2008-2009 Steven Barth <steven@midlink.org>
3 Copyright 2008-2018 Jo-Philipp Wich <jo@mein.io>
4 Licensed to the public under the Apache License 2.0.
5 -%>
6
7 <%-
8 local fs = require "nixio.fs"
9 local has_ip6tables = fs.access("/usr/sbin/ip6tables")
10 local mode = 4
11
12 if has_ip6tables then
13 mode = luci.dispatcher.context.requestpath
14 mode = tonumber(mode[#mode] ~= "iptables" and mode[#mode]) or 4
15 end
16 -%>
17
18 <%+header%>
19
20 <style type="text/css">
21 span.jump, .cbi-tooltip-container {
22 border-bottom: 1px dotted blue;
23 cursor: pointer;
24 }
25
26 ul {
27 list-style: none;
28 }
29
30 .references {
31 position: relative;
32 }
33
34 .references .cbi-tooltip {
35 left: 0 !important;
36 top: 1.5em !important;
37 }
38
39 h4 > span {
40 font-size: 90%;
41 }
42 </style>
43
44 <h2 name="content"><%:Firewall Status%></h2>
45
46 <% if has_ip6tables then %>
47 <ul class="cbi-tabmenu">
48 <li data-mode="4" class="cbi-tab<%= mode ~= 4 and "-disabled" %>">
49 <a href="<%=url("admin/status/iptables/4")%>"><%:IPv4 Firewall%></a>
50 </li>
51 <li data-mode="6" class="cbi-tab<%= mode ~= 6 and "-disabled" %>">
52 <a href="<%=url("admin/status/iptables/6")%>"><%:IPv6 Firewall%></a>
53 </li>
54 </ul>
55 <% end %>
56
57 <div style="position: relative">
58 <form method="post" action="<%=url("admin/status/iptables_action")%>" style="position: absolute; right: 0">
59 <input type="hidden" name="token" value="<%=token%>" />
60 <input type="hidden" name="family" value="<%=mode%>" />
61 <input type="button" class="cbi-button" data-hide-empty="false" value="<%:Hide empty chains%>" onclick="hide_empty(this)" />
62 <input type="submit" class="cbi-button" name="zero" value="<%:Reset Counters%>" />
63 <input type="submit" class="cbi-button" name="restart" value="<%:Restart Firewall%>" />
64 </form>
65 </div>
66
67 <div id="iptables">
68 <p><em class="spinning"><%:Collecting data...%></em></p>
69 </div>
70
71 <script type="text/javascript" src="<%=resource%>/view/status/iptables.js"></script>
72
73 <%+footer%>