Merge pull request #4496 from TDT-AG/pr/20201006-luci-mod-system-leds

luci-mod-system: fix uci led option remove callback
This commit is contained in:
Jo-Philipp Wich 2020-10-06 15:37:03 +02:00 committed by GitHub
commit 8959bfff97
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -88,6 +88,32 @@ return view.extend({
var plugin = plugins[i];
plugin.form.addFormOptions(s);
}
var opts = s.getOption();
var removeIfNoneActive = function(original_remove_fn, section_id) {
var isAnyActive = false;
for (var optname in opts) {
if (opts[optname].ucioption != this.ucioption)
continue;
if (!opts[optname].isActive(section_id))
continue;
isAnyActive = true;
break;
}
if (!isAnyActive)
original_remove_fn.call(this, section_id);
};
for (var optname in opts) {
if (!opts[optname].ucioption || optname == opts[optname].ucioption)
continue;
opts[optname].remove = removeIfNoneActive.bind(opts[optname], opts[optname].remove);
}
};
return m.render();