blob: 14932ffaef8ba15fcd1ca7e108a0ad3caa42a19f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
<%#
Copyright 2018 Dirk Brenken (dev@brenken.org)
This is free software, licensed under the Apache License, Version 2.0
-%>
<%-
local util = require("luci.util")
local ipsets = util.split(util.trim(util.exec("ipset -n -L 2>/dev/null | sort")), "\n", nil, true) or {}
-%>
<%+header%>
<%+banip/banip_css%>
<script type="text/javascript">
//<![CDATA[
function ipset_view()
{
var ipset = div_ipsets.querySelector("#s_ipsets").value;
var filter = document.getElementById("checkbox_filter").checked;
var view = document.getElementById("view_id");
if (!ipset)
{
return;
}
view.value = "<%:Loading ...%>";
new XHR().get('<%=luci.dispatcher.build_url("admin", "services", "banip")%>/ipsetview/' + ipset + "/" + filter, null,
function(x)
{
if (!x)
{
view.value = "<%:No response!%>";
return;
}
view.value = x.responseText;
});
}
//]]>
</script>
<div class="cbi-map">
<div class="cbi-section">
<div class="cbi-section-descr"><%:Check the current available IPSets.%></div>
<div class="cbi-section-node">
<div class="table cbi-section-table">
<div class="tr cbi-section-table-row">
<div class="td left">
<input class="cbi-input-checkbox" data-update="click change" type="checkbox" id="checkbox_filter" name="checkbox_filter" value="1" checked="checked" />
<label for="checkbox_filter"><%_Show only set member with packet counter > 0%></label>
</div>
</div>
<div class="tr cbi-section-table-row" id="div_ipsets">
<div class="td left">
<select id="s_ipsets" class="cbi-input-select cbi-button" style="width:15em">
<%- for _, z in ipairs(ipsets) do -%><option value="<%=z%>"><%=z%></option><%- end -%>
</select>
<input type="button" id="bt_load" value="<%:Load%>" onclick="ipset_view()" class="cbi-button cbi-button-add" />
</div>
</div>
</div>
</div>
<textarea id="view_id" readonly="readonly" wrap="off" value=""></textarea>
</div>
</div>
<%+footer%>
|