2 Copyright
2017-
2018 Dirk Brenken (dev@brenken.org)
3 This is free software, licensed under the Apache License, Version
2.0
6 <style type=
"text/css">
11 display: inline-block;
17 <script type=
"text/javascript">
19 function status_update(json)
21 var view = document.getElementById(
"value_1");
22 var btn1 = document.getElementById(
"btn1");
23 var btn1_running = document.getElementById(
"btn1_running");
24 var btn2 = document.getElementById(
"btn2");
25 var btn2_running = document.getElementById(
"btn2_running");
26 var input = json.data.adblock_status;
28 view.innerHTML = input ||
"-";
29 if (input ===
"enabled")
31 btn1.value =
"<%:Suspend%>";
32 btn1.name =
"do_suspend";
33 btn2.value =
"<%:Refresh%>";
34 btn2.name =
"do_refresh";
35 btn1.disabled = false;
36 running(btn1_running,
0);
37 btn2.disabled = false;
38 running(btn2_running,
0);
40 else if (input ===
"paused")
42 btn1.value =
"<%:Resume%>";
43 btn1.name =
"do_resume";
44 btn2.value =
"<%:Refresh%>";
45 btn2.name =
"do_refresh";
46 btn1.disabled = false;
47 running(btn1_running,
0);
48 btn2.disabled = false;
49 running(btn2_running,
0);
53 btn1.value =
"<%:Suspend%>";
54 btn1.name =
"do_suspend";
55 btn2.value =
"<%:Refresh%>";
56 btn2.name =
"do_refresh";
60 view = document.getElementById(
"value_2");
61 input = json.data.adblock_version;
62 view.innerHTML = input ||
"-";
63 view = document.getElementById(
"value_3");
64 input = json.data.fetch_utility;
65 view.innerHTML = input ||
"-";
66 view = document.getElementById(
"value_4");
67 input = json.data.dns_backend;
68 view.innerHTML = input ||
"-";
69 view = document.getElementById(
"value_5");
70 input = json.data.overall_domains;
71 view.innerHTML = input ||
"-";
72 view = document.getElementById(
"value_6");
73 input = json.data.last_rundate;
74 view.innerHTML = input ||
"-";
77 function btn_action(action)
79 var btn1 = document.getElementById(
"btn1");
80 var btn1_running = document.getElementById(
"btn1_running");
81 var btn2 = document.getElementById(
"btn2");
82 var btn2_running = document.getElementById(
"btn2_running");
87 if (action.name ===
"do_refresh")
89 running(btn2_running,
1);
93 running(btn1_running,
1);
96 new XHR.get('<%=luci.dispatcher.build_url(
"admin",
"services",
"adblock")%
>/action/' + action.name, null,
106 function running(element, state)
110 var running_html = '
<img src=
"<%=resource%>/icons/loading.gif" alt=
"<%:Loading%>" width=
"16" height=
"16" style=
"vertical-align:middle" />';
111 element.innerHTML = running_html;
115 element.innerHTML = '';
119 XHR.get('<%=luci.dispatcher.build_url(
"admin",
"services",
"adblock",
"status")%
>', null,
120 function(x, json_info)
122 if (!x || !json_info)
124 var btn1 = document.getElementById(
"btn1");
125 var btn2 = document.getElementById(
"btn2");
126 btn1.value =
"<%:Suspend%>";
127 btn1.name =
"do_suspend";
128 btn2.value =
"<%:Refresh%>";
129 btn2.name =
"do_refresh";
130 btn1.disabled = true;
131 btn2.disabled = true;
134 status_update(json_info)
137 XHR.poll(
5, '<%=luci.dispatcher.build_url(
"admin",
"services",
"adblock",
"status")%
>', null,
138 function(x, json_info)
140 if (!x || !json_info)
144 status_update(json_info)
149 <h3><%:Runtime Information%
></h3>
150 <div class=
"cbi-value" id=
"status_1">
151 <label class=
"cbi-value-title" for=
"status_1"><%:Adblock Status%
></label>
152 <div class=
"cbi-value-field">
153 <span class=
"runtime" id=
"value_1">-
</span>
156 <div class=
"cbi-value" id=
"status_2">
157 <label class=
"cbi-value-title" for=
"status_2"><%:Adblock Version%
></label>
158 <div class=
"cbi-value-field">
159 <span class=
"runtime" id=
"value_2">-
</span>
162 <div class=
"cbi-value" id=
"status_3">
163 <label class=
"cbi-value-title" for=
"status_3"><%:Download Utility (SSL Library)%
></label>
164 <div class=
"cbi-value-field">
165 <span class=
"runtime" id=
"value_3">-
</span>
168 <div class=
"cbi-value" id=
"status_4">
169 <label class=
"cbi-value-title" for=
"status_4"><%:DNS Backend (DNS Directory)%
></label>
170 <div class=
"cbi-value-field">
171 <span class=
"runtime" id=
"value_4">-
</span>
174 <div class=
"cbi-value" id=
"status_5">
175 <label class=
"cbi-value-title" for=
"status_5"><%:Overall Domains%
></label>
176 <div class=
"cbi-value-field">
177 <span class=
"runtime" id=
"value_5">-
</span>
180 <div class=
"cbi-value" id=
"status_6">
181 <label class=
"cbi-value-title" for=
"status_6"><%:Last Run%
></label>
182 <div class=
"cbi-value-field">
183 <span class=
"runtime" id=
"value_6">-
</span>
187 <div class=
"cbi-value" id=
"button_1">
188 <label class=
"cbi-value-title" for=
"button_1"><%:Suspend / Resume Adblock%
></label>
189 <div class=
"cbi-value-field">
190 <input class=
"cbi-button cbi-button-reset" id=
"btn1" type=
"button" value=
"" onclick=
"btn_action(this)" />
191 <span id=
"btn1_running" style=
"display:inline-block; width:16px; height:16px; margin:0 5px"></span>
195 <div class=
"cbi-value" id=
"button_2">
196 <label class=
"cbi-value-title" for=
"button_2"><%:Refresh Blocklist Sources%
></label>
197 <div class=
"cbi-value-field">
198 <input class=
"cbi-button cbi-button-apply" id=
"btn2" type=
"button" value=
"" onclick=
"btn_action(this)" />
199 <span id=
"btn2_running" style=
"display:inline-block; width:16px; height:16px; margin:0 5px"></span>