Merge pull request #5328 from TDT-AG/pr/20210903-luci-mod-system

luci-mod-system: add led-trigger description
This commit is contained in:
Florian Eckert 2021-10-28 15:47:44 +02:00 committed by GitHub
commit b710c4a843
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 47 additions and 17 deletions

View file

@ -12,6 +12,7 @@ var callUSB = rpc.declare({
return baseclass.extend({
trigger: _('USB (kernel: usbport)'),
description: _('This LED trigger can be used for signalling to the user a presence of USB device in a given port.'),
kernel: true,
addFormOptions(s){
var o;

View file

@ -4,18 +4,9 @@
return baseclass.extend({
trigger: _('Always on (kernel: default-on)'),
description: _('The LED is always in default state on.'),
kernel: true,
addFormOptions(s){
var o;
o = s.option(form.Flag, 'default', _('Default state'));
o.rmempty = false;
o.depends('trigger', 'default-on');
o.textvalue = function(section_id) {
var cval = this.cfgvalue(section_id);
if (cval == null)
cval = this.default;
return (cval == this.enabled) ? _('On') : _('Off');
};
}
});

View file

@ -3,6 +3,8 @@
return baseclass.extend({
trigger: _('Heartbeat interval (kernel: heartbeat)'),
description: _('The LED flashes to simulate actual heart beat.') +
_('The frequency is in direct proportion to 1-minute average CPU load.'),
kernel: true,
addFormOptions(s){
var o;

View file

@ -5,6 +5,7 @@
return baseclass.extend({
trigger: _("Network device activity (kernel: netdev)"),
description: _('The LED flashes with link status and activity on the configured interface.'),
kernel: true,
addFormOptions(s){
var o;

View file

@ -3,8 +3,19 @@
return baseclass.extend({
trigger: _('Always off (kernel: none)'),
description: _('The LED is always in default state off.'),
kernel: true,
addFormOptions(s){
var o;
o = s.option(form.Flag, 'default', _('Default state'));
o.rmempty = false;
o.depends('trigger', 'none');
o.textvalue = function(section_id) {
var cval = this.cfgvalue(section_id);
if (cval == null)
cval = this.default;
return (cval == this.enabled) ? _('On') : _('Off');
};
}
});

View file

@ -4,15 +4,20 @@
return baseclass.extend({
trigger: _('Custom flash interval (kernel: timer)'),
description: _('The LED blinks with the configured on/off frequency'),
kernel: true,
addFormOptions(s){
var o;
o = s.option(form.Value, 'delayon', _('On-State Delay'));
o = s.option(form.Value, 'delayon', _('On-State Delay'),
_('How long (in milliseconds) the LED should be on')
);
o.modalonly = true;
o.depends('trigger', 'timer');
o = s.option(form.Value, 'delayoff', _('Off-State Delay'));
o = s.option(form.Value, 'delayoff', _('Off-State Delay'),
_('How long (in milliseconds) the LED should be off')
);
o.modalonly = true;
o.depends('trigger', 'timer');
}

View file

@ -63,6 +63,7 @@ return view.extend({
s.addremove = true;
s.sortable = true;
s.addbtntitle = _('Add LED action');
s.nodescriptions = true;
s.option(form.Value, 'name', _('Name'));
@ -75,13 +76,31 @@ return view.extend({
for (var i = 0; i < plugins.length; i++) {
var plugin = plugins[i];
if ( plugin.form.kernel == false )
if ( plugin.form.kernel == false ) {
o.value(plugin.name, plugin.form.trigger);
else
for (var k = 0; k < triggers.length; k++)
if ( plugin.name == triggers[k] )
o.value(plugin.name, plugin.form.trigger);
}
else {
if (triggers.indexOf(plugin.name) >= 0)
o.value(plugin.name, plugin.form.trigger);
}
}
o.onchange = function(ev, section, value) {
for (var i = 0; i < plugins.length; i++) {
var plugin = plugins[i];
if ( plugin.name === value )
this.map.findElement('id', 'cbid.system.%s.trigger'.format(section))
.nextElementSibling.innerHTML = plugin.form.description || '';
}
}
o.load = function(section_id) {
var trigger = uci.get('system', section_id, 'trigger');
for (var i = 0; i < plugins.length; i++) {
var plugin = plugins[i];
if ( plugin.name === trigger)
this.description = plugin.form.description || '';
}
return trigger;
};
s.addModalOptions = function(s) {
for (var i = 0; i < plugins.length; i++) {