d2c2b7e62cddeec4682dc0ea3a4c7ce7bca2dd29
[project/luci.git] / applications / luci-ddns / luasrc / view / ddns / system_status.htm
1
2 <!-- ++ BEGIN ++ Dynamic DNS ++ system_status.htm ++ -->
3 <script type="text/javascript">//<![CDATA[
4         XHR.poll(10, '<%=luci.dispatcher.build_url("admin", "services", "ddns", "status")%>', null,
5                 function(x, data)
6                 {
7                         var tbl = document.getElementById('ddns_status_table');
8                         // security check
9                         if ( !(tbl) ) { return; }
10
11                         // clear all rows
12                         while (tbl.rows.length > 1) 
13                                 tbl.deleteRow(1);
14
15                         // variable for Modulo-Division use to set cbi-rowstyle-? (0 or 1)
16                         var x = -1;
17                         var i = 1;
18
19                         // no data => no ddns-scripts Version 2 installed
20                         if ( !data ) {
21                                 var txt = '<br /><strong><font color="red"><%:Old version of ddns-scripts installed%></font>' ;
22                                 var url = '<a href="' ;
23                                 url += '<%=luci.dispatcher.build_url("admin", "system", "packages")%>' ;
24                                 url += '"><%:install update here%></a></strong>' ;
25                                 var tr = tbl.insertRow(-1);
26                                 tr.className = 'cbi-section-table-row cbi-rowstyle-' + (((i + x) % 2) + 1);
27                                 var td = tr.insertCell(-1);
28                                 td.colSpan = 2 ;
29                                 td.innerHTML = txt + " - " + url
30                                 tr.insertCell(-1).colSpan = 3 ;
31                                 return;
32                         }
33
34                         // DDNS Service disabled
35                         if (data[0].enabled == 0) {
36                                 var txt = '<strong><font color="red"><%:DDNS Autostart disabled%></font>' ;
37                                 var url = '<a href="' + data[0].url_up + '"><%:enable here%></a></strong>' ;
38                                 var tr = tbl.insertRow(-1);
39                                 tr.className = 'cbi-section-table-row cbi-rowstyle-' + (((i + x) % 2) + 1);
40                                 var td = tr.insertCell(-1);
41                                 td.colSpan = 2 ;
42                                 td.innerHTML = txt + " - " + url
43                                 tr.insertCell(-1).colSpan = 3 ;
44                                 x++ ;
45                         }
46
47                         for( i = 1; i < data.length; i++ )
48                         {
49                                 var tr = tbl.insertRow(-1);
50                                 tr.className = 'cbi-section-table-row cbi-rowstyle-' + (((i + x) % 2) + 1) ;
51
52                                 // configuration
53                                 tr.insertCell(-1).innerHTML = '<strong>' + data[i].section + '</strong>' ;
54
55                                 // pid
56                                 // data[i].pid ignored here
57
58                                 // last update
59                                 // data[i].datelast ignored here
60
61                                 // next update
62                                 switch (data[i].datenext) {
63                                         case "_empty_":
64                                                 tr.insertCell(-1).innerHTML = '<em><%:Unknown error%></em>' ;
65                                                 break;
66                                         case "_stopped_":
67                                                 tr.insertCell(-1).innerHTML = '<em><%:Stopped%></em>' ;
68                                                 break;
69                                         case "_disabled_":
70                                                 tr.insertCell(-1).innerHTML = '<em><%:Disabled%></em>' ;
71                                                 break;
72                                         case "_noupdate_":
73                                                 tr.insertCell(-1).innerHTML = '<em><%:Update error%></em>' ;
74                                                 break;
75                                         case "_runonce_":
76                                                 tr.insertCell(-1).innerHTML = '<em><%:Run once%></em>' ;
77                                                 break;
78                                         case "_verify_":
79                                                 tr.insertCell(-1).innerHTML = '<em><%:Verify%></em>';
80                                                 break;
81                                         default:
82                                                 tr.insertCell(-1).innerHTML = data[i].datenext ;
83                                                 break;
84                                 }
85
86                                 // domain
87                                 if (data[i].domain == "_nodomain_")
88                                         tr.insertCell(-1).innerHTML = '<em><%:config error%></em>';
89                                 else
90                                         tr.insertCell(-1).innerHTML = data[i].domain;
91
92                                 // registered IP
93                                 switch (data[i].reg_ip) {
94                                         case "_nodomain_":
95                                                 tr.insertCell(-1).innerHTML = '<em><%:Config error%></em>';
96                                                 break;
97                                         case "_nodata_":
98                                                 tr.insertCell(-1).innerHTML = '<em><%:No data%></em>';
99                                                 break;
100                                         case "_noipv6_":
101                                                 tr.insertCell(-1).innerHTML = '<em><%:IPv6 not supported%></em>';
102                                                 break;
103                                         default:
104                                                 tr.insertCell(-1).innerHTML = data[i].reg_ip;
105                                                 break;
106                                 }
107
108                                 // monitored interfacce
109                                 if (data[i].iface == "_nonet_")
110                                         tr.insertCell(-1).innerHTML = '<em><%:Config error%></em>';
111                                 else
112                                         tr.insertCell(-1).innerHTML = data[i].iface;
113                         }
114
115                         if (tbl.rows.length == 1 || (data[0].enabled == 0 && tbl.rows.length == 2) ) {
116                                 var br = '<br />';
117                                 if (tbl.rows.length > 1) 
118                                         br = '';
119                                 var tr = tbl.insertRow(-1);
120                                 tr.className = "cbi-section-table-row";
121                                 var td = tr.insertCell(-1);
122                                 td.colSpan = 5;
123                                 td.innerHTML = '<em>' + br + '<%:There is no service configured.%></em>' ;
124                         }
125                 }
126         );
127 //]]></script>
128
129 <fieldset class="cbi-section" id="ddns_status_section">
130         <legend><a href="<%=luci.dispatcher.build_url([[admin]], [[services]], [[ddns]])%>"><%:Dynamic DNS%></a></legend>
131
132         <table class="cbi-section-table" id="ddns_status_table">
133                 <tr class="cbi-section-table-titles">
134                         <th class="cbi-section-table-cell"><%:Configuration%></th>
135                         <th class="cbi-section-table-cell"><%:Next Update%></th>
136                         <th class="cbi-section-table-cell"><%:Hostname/Domain%></th>
137                         <th class="cbi-section-table-cell"><%:Registered IP%></th>
138                         <th class="cbi-section-table-cell"><%:Network%></th>
139                 </tr>
140                 <tr class="cbi-section-table-row">
141                         <td colspan="5"><em><br /><%:Collecting data...%></em></td>
142                 </tr>
143         </table>
144 </fieldset>
145 <!-- ++ END ++ Dynamic DNS ++ system_status.htm ++ -->