Commit graph

115 commits

Author SHA1 Message Date
Florian Eckert
d6dba39139 luci-mod-system: update LED trigger translations
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2020-05-04 12:02:36 +02:00
Jo-Philipp Wich
34c06b4704 luci-mod-system: password.js: make event handler attachment more robust
Do not expect a specific markup structure but use querySelector() to locate
the input element.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-05-02 23:53:02 +02:00
Jo-Philipp Wich
baa3bd4aac luci-mod-system: don't make SSH tabs depend on dropbear uci
This prevents a situation where the tabs will be disabled by the dispatcher
once the last config section has been removed. This would allow a user to
disable SSH via the UI but not to reenable it.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-04-26 18:45:58 +02:00
Jo-Philipp Wich
8f34e105c0 treewide: add ACL annotations to menu entries
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-04-17 12:40:31 +02:00
Jo-Philipp Wich
111670245e luci-mod-system: system.js: disable timesync buttons on readonly map
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-04-16 15:39:54 +02:00
Jo-Philipp Wich
e822382a98 luci-mod-system: startup.js: disable action buttons on insufficient ACLs
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-04-16 15:38:56 +02:00
Jo-Philipp Wich
74e8fb0c8e luci-mod-system: sshkeys.js: make readonly on insufficient ACLs
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-04-16 15:38:09 +02:00
Jo-Philipp Wich
d7a17641d3 luci-mod-system: password.js: make readonly on insufficient ACLs
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-04-16 15:36:39 +02:00
Jo-Philipp Wich
01129d5297 luci-mod-system: mounts.js: disable umount button in readonly map
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-04-16 15:35:51 +02:00
Jo-Philipp Wich
684f7dd7dc luci-mod-system: flash.js: make readonly on insufficient ACLs
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-04-16 15:35:13 +02:00
Jo-Philipp Wich
92902225fb luci-mod-system: crontab.js: disable textarea on insufficient ACLs
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-04-16 15:33:02 +02:00
Jo-Philipp Wich
ca295b04e7 luci-mod-system: convert menu controller to declarative JSON
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-04-14 17:05:29 +02:00
Jo-Philipp Wich
4feab2e400 luci-mod-system: fix dropbear write ACL rule
Fixes: 
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-04-10 22:53:31 +02:00
Jo-Philipp Wich
c099344013 treewide: reorganize base ACLs
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-04-09 23:23:33 +02:00
Jo-Philipp Wich
3c4bc228a1 treewide: import utility classes explicitly
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-04-03 10:00:06 +02:00
Jo-Philipp Wich
3afe606743 luci-mod-system: system.js: rework local time widget markup
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-03-23 21:58:25 +01:00
Jo-Philipp Wich
90990df3b6 luci-mod-system: use proper CSS class for map description
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-03-23 21:56:55 +01:00
Jo-Philipp Wich
9706388c42 luci-mod-system: use generic .cbi-section-actions style for row actions
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-03-23 21:53:53 +01:00
Florian Eckert
638f5ce071 luci-mod-system: add led plugin infrastructure
This commit creates the possibility that not only kernel-led-triggers can
be selected but also application-led-triggers from user space.
This is done via a plugin mechanism. The application-led-triggers are scripts
that set kernel-led-triggers on system events or services. Until now this
has not been possible. The package rssileds is a kind of
application-led-trigger.

The following new packages are added:

* luci-app-ledtrig-rssi (application-led-trigger)
* luci-app-ledtrig-switch (kernel-led-trigger) not needed on every most devices
* luci-app-ledtrig-usport (kernel-led-trigger) optional trigger

Since we have now a plugin mechanism I have added the following triggers
as a dependency. So this triggers are now installed per default on LuCI
installation.

* kmod-ledtrig-default-on
* kmod-ledtrig-heartbeat
* kmod-ledtrig-netdev
* kmod-ledtrig-timer

The kernel trigger kmod-ledtrig-usbdev was removed with the commit
d0b50c2770
So I have not ported the relevant code anymore.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2020-02-27 13:28:03 +01:00
Jo-Philipp Wich
b8f65c340c luci-mod-system: fix zram compression placeholder
Fixes: 
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-01-29 09:00:57 +01:00
Hannu Nyman
2a1a9874f5 luci-mod-system: remove abbreviation from LED config menu item
Remove the abbreviation coding from the menu item, as it does nor work
in menu and seems to prevent translation of the menu item.

(This was the only menu item in LuCI that had abbr logic.)

Reference to 

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2020-01-23 21:11:41 +02:00
Ansuel Smith
5e6ec8562f
luci-base: remove hardcoded cgi-bin path
Currently LuCI can be loaded only when placed in the root of the server as the cgi-bin path are hardcoded. Change the index.html to load the cgi-bin path from the current level.
Also add a new entry in the env Object to make the cgi_base path easily accessible.
This variable will be based on the position of /cgi-bin/luci.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2020-01-16 15:02:14 +01:00
Jo-Philipp Wich
a3ea891b7e luci-mod-system: sshkeys.js: do not incorrectly filter ecdsa keys on load
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-13 16:55:28 +01:00
Jo-Philipp Wich
0731f7e5e4 luci-mod-system: leds.js: display default state as On/Off
Fixes: 
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-11 10:14:03 +01:00
Yousong Zhou
90051b6858 luci-mod-system: validate log_ip as "host" instead of just ipaddr
Fixes FS#2444

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-11-04 02:19:06 +00:00
Jo-Philipp Wich
86f492173d treewide: require ui.js explicitly
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-03 21:55:50 +01:00
Jo-Philipp Wich
54163c95e1 luci-mod-system: sshkeys.js: explicitely require ui.js
While ui.js is implicitely autoloaded by other classes, we need to require
it directly in the view to avoid race conditions during rendering.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-03 18:03:01 +01:00
Jo-Philipp Wich
af5dc2652e luci-mod-system: flash.js: upon sysupgrade, select reconnect ip by keep state
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-01 12:45:00 +01:00
Jo-Philipp Wich
7d84396471 luci-mod-system: flash.js: fix flash erase modal
The firstboot rpc call might not return, therefor do not wait on promise
fullfillment but display modal dialog right away.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-01 12:42:48 +01:00
Jo-Philipp Wich
33346dadf4 luci-base, luci-mod-system: move file upload handling to ui.js
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-01 12:03:33 +01:00
Jo-Philipp Wich
470464ae4a luci-mod-system: use declarative dependencies in controller
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-01 12:03:33 +01:00
Jo-Philipp Wich
5ce16764ad luci-base, luci-mod-system: replace luci/setUmount with fs.exec calls
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-01 12:03:33 +01:00
Jo-Philipp Wich
c67d2ddc2c luci-base, luci-mod-system: replace luci/setReboot with fs.exec
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-01 12:03:33 +01:00
Richard Yu
c6d0822793
luci-mod-system: add missing speed_mask option in leds.js
Signed-off-by: Richard Yu <yurichard3839@gmail.com>
2019-10-28 14:57:19 +08:00
Jo-Philipp Wich
36b052f8cc luci-mod-system: flash.sh: gracefully handle missing sysupgrade.conf
Fixes: 
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-10-21 15:30:22 +02:00
Jo-Philipp Wich
dffa9c57fe luci-mod-system: sshkeys.js: create authorized_keys as 0600
Fixes: 
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-10-21 08:43:07 +02:00
Jo-Philipp Wich
45b56e85a6 luci-mod-system: leds.js: fix handling device option
Since the modal overlay map was unable to read the current trigger value,
it mistakingly allowed the removal of the device option value.

Fix it by finding the option object through lookupOption() instead of
relying on a reference.

Fixes: 
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-10-18 18:55:10 +02:00
Jo-Philipp Wich
3d11af11a7
Merge pull request from ptpt52/refine-flash-reset
luci-mod-system: refine flash reset
2019-10-16 21:31:26 +02:00
Jo-Philipp Wich
5ccbda54e8 luci-mod-system: flash.js: fix passing sysupgrade opts
Instead of binding the checked state to the button handler function,
bind the underlying checkboxes instead to observe the actual user
choice instead of the initial value.

This fixes forcing sysupgrade or deselecting keep settings.

Reported-by: Hannu Nyman <hannu.nyman@iki.fi>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-10-07 19:55:31 +02:00
Chen Minqiang
29aad47121 luci-mod-system: refine flash reset
We determine flash reset capability by checking overlayfs in /proc/mounts

Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
2019-10-07 23:37:35 +08:00
Jo-Philipp Wich
90c52a1782 luci-app-advanced-reboot: import applyreboot template from luci-mod-system
Since the advanced-reboot app is the sole remaining user of the applyreboot
template, import it into this package to avoid the need for shipping it
with the default installation.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-10-07 11:53:39 +02:00
Jo-Philipp Wich
b637cf6750 luci-mod-system: port reboot view to client side js
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-10-07 11:53:39 +02:00
Jo-Philipp Wich
29ccea14f1 luci-mod-system: use awaitReconnect() from ui.js
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-10-07 11:53:39 +02:00
Jo-Philipp Wich
55fb53e995 luci-mod-system: sshkeys.js: use common fs.js class
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-10-07 11:53:39 +02:00
Jo-Philipp Wich
811012cab5 luci-mod-system: startup.js: use common fs.js class
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-10-07 11:53:39 +02:00
Jo-Philipp Wich
807dd50640 luci-mod-system: flash.js: use common fs.js class
Also move the keep settings checkbox above the error messages in the
sysupgrade confirmation dialog.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-10-07 11:53:39 +02:00
Jo-Philipp Wich
641c82cb21 luci-mod-system: crontab.js: use common fs.js class
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-10-07 11:53:39 +02:00
Jo-Philipp Wich
020ac1e08d luci-mod-system: flash.js: fix "rootfs_data" partition detection
The `/sys/devices/virtual/mtd/` information is not available on all
devices so rely on the contents of `/proc/mtd` instead to check for
the existence of the `rootfs_data` partition.

Fixes: 
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-10-02 13:02:04 +02:00
Rafał Miłecki
fb740f2c79 luci-mod-system: check for sysupgrade with backup possibility
Some firmware images may not support preserving backup. In such cases
display a warning and disable relevant checkbox.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-10-02 11:13:19 +02:00
Rafał Miłecki
5f2a17938f luci-mod-system: check if it's possible to force sysupgrade
Some validation errors may be critical enough to prevent sysupgrade.
Check the "forceable" property and disallow forcing sysupgrade if
applicable. It would fail anyway at the "sysupgrade" call.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-10-02 09:47:20 +02:00