summaryrefslogtreecommitdiffhomepage
path: root/modules/luci-mod-network/htdocs
diff options
context:
space:
mode:
Diffstat (limited to 'modules/luci-mod-network/htdocs')
-rw-r--r--modules/luci-mod-network/htdocs/luci-static/resources/view/network/interfaces.js6
-rw-r--r--modules/luci-mod-network/htdocs/luci-static/resources/view/network/wireless.js23
2 files changed, 20 insertions, 9 deletions
diff --git a/modules/luci-mod-network/htdocs/luci-static/resources/view/network/interfaces.js b/modules/luci-mod-network/htdocs/luci-static/resources/view/network/interfaces.js
index 624718dd84..b49d36d464 100644
--- a/modules/luci-mod-network/htdocs/luci-static/resources/view/network/interfaces.js
+++ b/modules/luci-mod-network/htdocs/luci-static/resources/view/network/interfaces.js
@@ -740,6 +740,12 @@ return L.view.extend({
}, this));
};
+ s.handleRemove = function(section_id, ev) {
+ return network.deleteNetwork(section_id).then(L.bind(function(section_id, ev) {
+ return form.GridSection.prototype.handleRemove.apply(this, [section_id, ev]);
+ }, this, section_id, ev));
+ };
+
o = s.option(form.DummyValue, '_ifacebox');
o.modalonly = false;
o.textvalue = function(section_id) {
diff --git a/modules/luci-mod-network/htdocs/luci-static/resources/view/network/wireless.js b/modules/luci-mod-network/htdocs/luci-static/resources/view/network/wireless.js
index 9e75fe9013..e6494f6b21 100644
--- a/modules/luci-mod-network/htdocs/luci-static/resources/view/network/wireless.js
+++ b/modules/luci-mod-network/htdocs/luci-static/resources/view/network/wireless.js
@@ -1721,7 +1721,8 @@ return L.view.extend({
zoneval = zoneopt ? zoneopt.formvalue('_new_') : null,
enc = L.isObject(bss.encryption) ? bss.encryption : null,
is_wep = (enc && Array.isArray(enc.wep)),
- is_psk = (enc && Array.isArray(enc.wpa) && Array.isArray(enc.authentication) && enc.authentication[0] == 'psk');
+ is_psk = (enc && Array.isArray(enc.wpa) && L.toArray(enc.authentication).filter(function(a) { return a == 'psk' })),
+ is_sae = (enc && Array.isArray(enc.wpa) && L.toArray(enc.authentication).filter(function(a) { return a == 'sae' }));
if (nameval == null || (passopt && passval == null))
return;
@@ -1749,7 +1750,11 @@ return L.view.extend({
else if (bss.bssid != null)
uci.set('wireless', section_id, 'bssid', bss.bssid);
- if (is_psk) {
+ if (is_sae) {
+ uci.set('wireless', section_id, 'encryption', 'sae');
+ uci.set('wireless', section_id, 'key', passval);
+ }
+ else if (is_psk) {
for (var i = enc.wpa.length - 1; i >= 0; i--) {
if (enc.wpa[i] == 2) {
uci.set('wireless', section_id, 'encryption', 'psk2');
@@ -1769,14 +1774,14 @@ return L.view.extend({
uci.set('wireless', section_id, 'key1', passval);
}
- var zonePromise = zoneval
- ? firewall.getZone(zoneval).then(function(zone) { return zone || firewall.addZone(zoneval) })
- : Promise.resolve();
+ return network.addNetwork(nameval, { proto: 'dhcp' }).then(function(net) {
+ firewall.deleteNetwork(net.getName());
- return zonePromise.then(function(zone) {
- return network.addNetwork(nameval, { proto: 'dhcp' }).then(function(net) {
- firewall.deleteNetwork(net.getName());
+ var zonePromise = zoneval
+ ? firewall.getZone(zoneval).then(function(zone) { return zone || firewall.addZone(zoneval) })
+ : Promise.resolve();
+ return zonePromise.then(function(zone) {
if (zone)
zone.addNetwork(net.getName());
});
@@ -1793,7 +1798,7 @@ return L.view.extend({
s2 = m2.section(form.NamedSection, '_new_'),
enc = L.isObject(bss.encryption) ? bss.encryption : null,
is_wep = (enc && Array.isArray(enc.wep)),
- is_psk = (enc && Array.isArray(enc.wpa) && Array.isArray(enc.authentication) && enc.authentication[0] == 'psk'),
+ is_psk = (enc && Array.isArray(enc.wpa) && L.toArray(enc.authentication).filter(function(a) { return a == 'psk' || a == 'sae' })),
replace, passphrase, name, zone;
s2.render = function() {