luci-mod-network: made expandAndFormatMAC return arrays
authorPaul Donald <newtwen+github@gmail.com>
Thu, 25 Jul 2024 14:22:25 +0000 (16:22 +0200)
committerPaul Donald <newtwen+github@gmail.com>
Thu, 25 Jul 2024 14:30:35 +0000 (16:30 +0200)
instead of returning a space separated string

follow-up to 5ab0cb1f15bcb31015ae8345d302c6d023ba51e2

Closes #7209

Signed-off-by: Paul Donald <newtwen+github@gmail.com>
modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js

index 4f6fe79385c51b989e64cb46daf163423724131e..ef466c115f6accc4b0853770c03bb591b2a6ddc7 100644 (file)
@@ -221,7 +221,7 @@ function expandAndFormatMAC(macs) {
                }
        });
 
-       return result.length ? result.join(' ') : null;
+       return result.length ? result : null;
 }
 
 function isValidMAC(sid, s) {
@@ -1039,8 +1039,12 @@ return view.extend({
                //As a special case, in DHCPv4, it is possible to include more than one hardware address. eg: --dhcp-host=11:22:33:44:55:66,12:34:56:78:90:12,192.168.0.2 This allows an IP address to be associated with multiple hardware addresses, and gives dnsmasq permission to abandon a DHCP lease to one of the hardware addresses when another one asks for a lease
                so.rmempty  = true;
                so.cfgvalue = function(section) {
-                       var macs = L.toArray(uci.get('dhcp', section, 'mac'));
-                       return expandAndFormatMAC(macs);
+                       var macs = uci.get('dhcp', section, 'mac');
+                       if(!Array.isArray(macs)){
+                               return expandAndFormatMAC(L.toArray(macs));
+                       } else {
+                               return expandAndFormatMAC(macs);
+                       }
                };
                //removed jows renderwidget function which hindered multi-mac entry
                so.validate = validateMACAddr.bind(so, pools);