luci-mod-status: hide DHCP status if dnsmasq/odhcpd aren't present
authorJo-Philipp Wich <jo@mein.io>
Sun, 23 Feb 2020 20:12:54 +0000 (21:12 +0100)
committerJo-Philipp Wich <jo@mein.io>
Sun, 23 Feb 2020 20:14:10 +0000 (21:14 +0100)
Fixes: #3674
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 4efc7cbbda86280343683a7d1c2563233c499550)

modules/luci-mod-status/htdocs/luci-static/resources/view/status/include/40_dhcp.js
modules/luci-mod-status/htdocs/luci-static/resources/view/status/index.js

index 83c0c151eb49307a120c9d7ac289788f89d05198..58d3054233fbffbd56ffaeaa4e0a771595b2e921 100644 (file)
@@ -9,7 +9,7 @@ var callLuciDHCPLeases = rpc.declare({
 });
 
 return L.Class.extend({
-       title: _('Active DHCP Leases'),
+       title: '',
 
        load: function() {
                return Promise.all([
@@ -18,7 +18,7 @@ return L.Class.extend({
                ]);
        },
 
-       render: function(data) {
+       renderLeases: function(data) {
                var leases = Array.isArray(data[0].dhcp_leases) ? data[0].dhcp_leases : [],
                    leases6 = Array.isArray(data[0].dhcp6_leases) ? data[0].dhcp6_leases : [],
                    machints = data[1].getMACHints(false);
@@ -88,9 +88,17 @@ return L.Class.extend({
                }), E('em', _('There are no active leases')));
 
                return E([
+                       E('h3', _('Active DHCP Leases')),
                        table,
                        E('h3', _('Active DHCPv6 Leases')),
                        table6
                ]);
+       },
+
+       render: function(data) {
+               if (L.hasSystemFeature('dnsmasq') || L.hasSystemFeature('odhcpd'))
+                       return this.renderLeases(data);
+
+               return E([]);
        }
 });
index bb6947d664d4fa6aa4be2d1d22c9406185ea71a5..01a8e1835a5d03af351a4e4f03406ea1c64a9342 100644 (file)
@@ -82,7 +82,7 @@ return L.view.extend({
                        var container = E('div');
 
                        rv.appendChild(E('div', { 'class': 'cbi-section', 'style': 'display:none' }, [
-                               E('h3', title),
+                               title != '' ? E('h3', title) : '',
                                container
                        ]));