diff options
author | Jo-Philipp Wich <jow@openwrt.org> | 2011-09-26 00:26:44 +0000 |
---|---|---|
committer | Jo-Philipp Wich <jow@openwrt.org> | 2011-09-26 00:26:44 +0000 |
commit | 079131a309f2b37dd34e6c73cd4afc7650cee5c1 (patch) | |
tree | 986e26575764f6db2289bc82f5b7694ced1648c5 /applications/luci-upnp/luasrc | |
parent | 97f74fe7665c4bc317d9590bcafc2c109c861a3d (diff) |
applications/luci-upnp: rework status javascript to use XHR.poll()
Diffstat (limited to 'applications/luci-upnp/luasrc')
-rw-r--r-- | applications/luci-upnp/luasrc/view/upnp_status.htm | 71 |
1 files changed, 31 insertions, 40 deletions
diff --git a/applications/luci-upnp/luasrc/view/upnp_status.htm b/applications/luci-upnp/luasrc/view/upnp_status.htm index fbbcb3a717..d50ed0c4d7 100644 --- a/applications/luci-upnp/luasrc/view/upnp_status.htm +++ b/applications/luci-upnp/luasrc/view/upnp_status.htm @@ -1,8 +1,6 @@ <script type="text/javascript">//<![CDATA[ function upnp_delete_fwd(idx) { - var dlxhr = new XHR(); - - dlxhr.get('<%=luci.dispatcher.build_url("admin", "services", "upnp", "delete")%>/' + idx, null, + XHR.get('<%=luci.dispatcher.build_url("admin", "services", "upnp", "delete")%>/' + idx, null, function(x) { var tb = document.getElementById('upnp_status_table'); @@ -12,51 +10,44 @@ ); } - var stxhr = new XHR(); - (function() { - var func = arguments.callee; - - stxhr.get('<%=luci.dispatcher.build_url("admin", "services", "upnp", "status")%>', null, - function(x, st) + XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "services", "upnp", "status")%>', null, + function(x, st) + { + var tb = document.getElementById('upnp_status_table'); + if (st && tb) { - var tb = document.getElementById('upnp_status_table'); - if (st && tb) - { - /* clear all rows */ - while( tb.rows.length > 1 ) - tb.deleteRow(1); + /* clear all rows */ + while( tb.rows.length > 1 ) + tb.deleteRow(1); - for( var i = 0; i < st.length; i++ ) - { - var tr = tb.insertRow(-1); - tr.className = 'cbi-section-table-row cbi-rowstyle-' + ((i % 2) + 1); + for( var i = 0; i < st.length; i++ ) + { + var tr = tb.insertRow(-1); + tr.className = 'cbi-section-table-row cbi-rowstyle-' + ((i % 2) + 1); - tr.insertCell(-1).innerHTML = st[i].proto; - tr.insertCell(-1).innerHTML = st[i].extport; - tr.insertCell(-1).innerHTML = st[i].intaddr; - tr.insertCell(-1).innerHTML = st[i].intport; + tr.insertCell(-1).innerHTML = st[i].proto; + tr.insertCell(-1).innerHTML = st[i].extport; + tr.insertCell(-1).innerHTML = st[i].intaddr; + tr.insertCell(-1).innerHTML = st[i].intport; - tr.insertCell(-1).innerHTML = String.format( - '<input class="cbi-button cbi-input-remove" type="button" value="<%:Delete Redirect%>" onclick="upnp_delete_fwd(%d)" />', - st[i].num - ); - } + tr.insertCell(-1).innerHTML = String.format( + '<input class="cbi-button cbi-input-remove" type="button" value="<%:Delete Redirect%>" onclick="upnp_delete_fwd(%d)" />', + st[i].num + ); + } - if( tb.rows.length == 1 ) - { - var tr = tb.insertRow(-1); - tr.className = 'cbi-section-table-row'; + if( tb.rows.length == 1 ) + { + var tr = tb.insertRow(-1); + tr.className = 'cbi-section-table-row'; - var td = tr.insertCell(-1); - td.colSpan = 5; - td.innerHTML = '<em><br /><%:There are no active redirects.%></em>'; - } + var td = tr.insertCell(-1); + td.colSpan = 5; + td.innerHTML = '<em><br /><%:There are no active redirects.%></em>'; } - - window.setTimeout(func, 5000); } - ) - })(); + } + ); //]]></script> <fieldset class="cbi-section"> |