1 <script type="text/javascript">//<![CDATA[
3 function ocserv_disconnect(idx) {
4 (new XHR()).post('<%=url('admin/services/ocserv/disconnect')%>/' + idx, { token: '<%=token%>' },
7 var tb = document.getElementById('ocserv_status_table');
8 if (tb && (idx + 1 < tb.childNodes.length))
9 tb.removeChild(tb.childNodes[idx + 1]);
14 XHR.poll(5, '<%=url('admin/services/ocserv/status')%>', null,
17 var tb = document.getElementById('ocserv_status_table');
22 for (var i = 0; i < st.length; i++)
35 class: 'cbi-button cbi-button-remove',
36 onclick: 'ocserv_disconnect(%d)'.format(st[i].id)
41 cbi_update_table(tb, rows, '<em><%:There are no active users.%></em>');
47 <fieldset class="cbi-section">
48 <legend><%:Active OpenConnect Users%></legend>
49 <div class="table" id="ocserv_status_table">
50 <div class="tr table-titles">
51 <div class="th"><%:User%></div>
52 <div class="th"><%:Group%></div>
53 <div class="th"><%:IP Address%></div>
54 <div class="th"><%:VPN IP Address%></div>
55 <div class="th"><%:Device%></div>
56 <div class="th"><%:Time%></div>
57 <div class="th"><%:Cipher%></div>
58 <div class="th"><%:Status%></div>
59 <div class="th"> </div>
61 <div class="tr placeholder">
62 <div class="td"><em><%:Collecting data...%></em></div>