summaryrefslogtreecommitdiffhomepage
path: root/applications/luci-app-upnp/luasrc
diff options
context:
space:
mode:
Diffstat (limited to 'applications/luci-app-upnp/luasrc')
-rw-r--r--applications/luci-app-upnp/luasrc/view/upnp_status.htm75
1 files changed, 29 insertions, 46 deletions
diff --git a/applications/luci-app-upnp/luasrc/view/upnp_status.htm b/applications/luci-app-upnp/luasrc/view/upnp_status.htm
index 89fdb5e218..ee385b24a8 100644
--- a/applications/luci-app-upnp/luasrc/view/upnp_status.htm
+++ b/applications/luci-app-upnp/luasrc/view/upnp_status.htm
@@ -4,8 +4,8 @@
function(x)
{
var tb = document.getElementById('upnp_status_table');
- if (tb && (idx < tb.rows.length))
- tb.rows[0].parentNode.removeChild(tb.rows[idx]);
+ if (tb && (idx + 1 < tb.childNodes.length))
+ tb.removeChild(tb.childNodes[idx + 1]);
}
);
}
@@ -16,54 +16,37 @@
var tb = document.getElementById('upnp_status_table');
if (st && tb)
{
- /* clear all rows */
- while( tb.rows.length > 1 )
- tb.deleteRow(1);
+ var rows = [];
- 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++)
+ rows.push([
+ st[i].proto,
+ st[i].extport,
+ st[i].intaddr,
+ st[i].intport,
+ st[i].descr,
+ E('<input class="cbi-button cbi-button-remove" type="button" value="<%:Delete%>" onclick="upnp_delete_fwd(%d)" />'.format(st[i].num))
+ ]);
- 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].descr;
-
- tr.insertCell(-1).innerHTML = String.format(
- '<input class="cbi-button cbi-input-remove" type="button" value="<%:Delete%>" onclick="upnp_delete_fwd(%d)" />',
- st[i].num
- );
- }
-
- 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>';
- }
+ cbi_update_table(tb, rows, '<em><%:There are no active redirects.%></em>');
}
}
);
//]]></script>
-<fieldset class="cbi-section">
- <legend><%:Active UPnP Redirects%></legend>
- <table class="cbi-section-table" id="upnp_status_table">
- <tr class="cbi-section-table-titles">
- <th class="cbi-section-table-cell"><%:Protocol%></th>
- <th class="cbi-section-table-cell"><%:External Port%></th>
- <th class="cbi-section-table-cell"><%:Client Address%></th>
- <th class="cbi-section-table-cell"><%:Client Port%></th>
- <th class="cbi-section-table-cell"><%:Description%></th>
- <th class="cbi-section-table-cell">&#160;</th>
- </tr>
- <tr class="cbi-section-table-row">
- <td colspan="5"><em><br /><%:Collecting data...%></em></td>
- </tr>
- </table>
-</fieldset>
+<div class="cbi-section">
+ <h3><%:Active UPnP Redirects%></h3>
+ <div class="table" id="upnp_status_table">
+ <div class="tr table-titles">
+ <div class="th"><%:Protocol%></div>
+ <div class="th"><%:External Port%></div>
+ <div class="th"><%:Client Address%></div>
+ <div class="th"><%:Client Port%></div>
+ <div class="th"><%:Description%></div>
+ <div class="th cbi-section-actions">&#160;</div>
+ </div>
+ <div class="tr placeholder">
+ <div class="td"><em><%:Collecting data...%></em></div>
+ </div>
+ </div>
+</div>