Jo-Philipp Wich
119c6319cb
luci-base: network.js: don't batch wireless scan requests
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-21 10:23:37 +02:00
Jo-Philipp Wich
21d1266c53
luci-base: rpc.js: increase default timeout to 20s, allow batch prevention
...
Support a new option "nobatch: true" in rpc.declare() which prevents the
underlying RPC call from being batched with other calls.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-21 10:23:37 +02:00
Jo-Philipp Wich
afeacdc7df
luci-base: luci.js: improve XHR issue diagnostics
...
Differentiate between request timeouts and other error reasons.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-21 10:23:37 +02:00
INAGAKI Hiroshi
2a1e77e8cb
luci-base: update Japanese translation
...
Updated Japanese translations.
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2019-09-21 17:13:11 +09:00
INAGAKI Hiroshi
51b46c3299
luci-base: use old translation for "Gateway Ports"
...
This text is replaced from "Gateway ports" in
f878b21c8c
.
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2019-09-21 16:59:44 +09:00
INAGAKI Hiroshi
f894c2601e
luci-base: sync translations
...
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2019-09-21 14:26:49 +09:00
Jo-Philipp Wich
720df98642
luci-mod-network: sort wifi encryption by strength and popularity
...
Fixes : #3082
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-20 17:11:38 +02:00
Jo-Philipp Wich
f3a94051ec
luci-mod-network: fix key option quirk when switching wep and wpa modes
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-20 13:39:22 +02:00
Jo-Philipp Wich
ccd1523610
luci-mod-network: default to ieee80211w=2 for OWE
...
Ref: https://git.openwrt.org/?p=openwrt/openwrt.git;a=blob;f=package/network/services/hostapd/files/hostapd.sh;h=46acbefeeeb771de879dd9926ad170042dff2473;hb=HEAD#l327
Fixes: 63f28fd06
luci-mod-network: default to ieee80211w=1 for OWE
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-20 11:30:09 +02:00
Jo-Philipp Wich
d10575dfee
luci-base: form.js: only update option default if cfgvalue is null
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-20 09:58:31 +02:00
Jo-Philipp Wich
63f28fd065
luci-mod-network: default to ieee80211w=1 for OWE
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-20 09:55:51 +02:00
Jo-Philipp Wich
5986124c13
luci-mod-network: wireless.js: fix parsing of wep key slot cfgvalue
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-20 09:36:23 +02:00
Jo-Philipp Wich
0113171c64
luci-mod-network: wireless.js: fix disabled state on disabled radio
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-19 15:48:27 +02:00
Jo-Philipp Wich
0d9a77d806
luci-mod-network: wireless.js: select proper 11w default for WPA3 modes
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-19 15:47:55 +02:00
Jo-Philipp Wich
25e0b966c7
luci-base: form.js: add support for dynamic default values
...
Many uci options have different implicit defaults, depending on the
values of other related options. A prominent example is the wireless
ieee80211w option which defaults to 2, 1 or 0 depending on whether
the encryption is set to wpa3-sae, wpa2/wpa2 mixed or any other mode
respectively.
Add the ability to specify a dictionary of default values and their
corresponding dependencies in order to be able to express such
configurations.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-19 15:40:57 +02:00
Jo-Philipp Wich
4dfa657f77
luci-base: ui.js: mark user-changed widgets
...
Set a `data-changed=true` attribute on the widget element when the user
did any change to the default value.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-19 15:39:46 +02:00
Jo-Philipp Wich
53ac685092
luci-base: form.js: fix default click action of button options
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-18 15:08:19 +02:00
Jo-Philipp Wich
934fa275b2
luci-base: ensure that button labels are properly html escaped
...
Fixes : #3067
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-18 13:51:16 +02:00
muink
d07a55931d
luci-base: proto_dhcp.lua: Update chinese translations
...
Signed-off-by: muink <hukk1996@gmail.com>
2019-09-18 19:35:51 +08:00
Jo-Philipp Wich
982b08f45d
luci-mod-system: system.js: simplify btn actions, use feature flags
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-18 08:17:58 +02:00
Hannu Nyman
7dd6fde57e
Merge pull request #3080 from castillofrancodamian/master
...
luci-base and apps: update Spanish translation
2019-09-18 09:07:33 +03:00
Jo-Philipp Wich
fd9182b21a
luci-base: network.js: filter invalid mac addresses
...
Only consider valid ethernet mac addresses when building the device state
from raw getifaddrs() information.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-18 07:46:33 +02:00
Jo-Philipp Wich
15cc74c6b4
luci-mod-network: interfaces.js: derive status from layer 3 device
...
Align the status column device selection logic with the approach used for
rendering the interface status boxes; first try to obtain the active
layer3 device as reported by ubus, only then fall back to the protocol
specific device hint which might or might not point to an existing device.
Fixes : #3076
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-18 07:33:25 +02:00
Jo-Philipp Wich
10880b565f
luci-base: network.js: get low level device details from getifaddr() info
...
Fixes : #3078
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-18 07:19:18 +02:00
Jo-Philipp Wich
a67175cab1
luci-mod-system: disable redundant page actions in crontab, startup views
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-18 07:23:01 +02:00
Franco Castillo
0183eed288
luci-base and apps: update Spanish translation
...
Update of the Spanish translation of luci-base and some LuCI applications.
* luci-base
* adblock
* advanced-reboot
* aria2
* banip
* ddns
* firewall
* mjpg-streamer
* mwan3
* ntpc
* simple-adblock
* travelmate
* vpnbypass
* wifischedule
* wireguard
Signed-off-by: Franco Castillo <castillofrancodamian@gmail.com>
2019-09-17 23:40:37 -03:00
Jo-Philipp Wich
f878b21c8c
luci-mod-system: remplement dropbear settings as client side view
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-17 07:43:48 +02:00
Martin Schiller
2cdcec29ff
luci-base: fix german translation for factory reset hint
...
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2019-09-16 09:32:25 +02:00
Jo-Philipp Wich
9ae9657a85
luci-mod-system: remplement password change as client side view
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-16 07:54:25 +02:00
Jo-Philipp Wich
a31d1d10e0
luci-mod-system: reimplement SSH key mgmt as client side view
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-15 20:00:36 +02:00
Jo-Philipp Wich
3e1cf14ad1
luci-base: add luci/setPassword rpc method, dropbear feature flag
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-16 07:49:05 +02:00
Jo-Philipp Wich
9ecfe33edd
luci-base: luci.js: render view buttons depending on available functions
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-17 07:03:27 +02:00
Jo-Philipp Wich
96fbca76c8
luci-base: form.js: implement JSONMap
...
Implement a new map type JSONMap which uses a JSON data structure instead
of uci as configuration data backend.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-16 07:55:45 +02:00
INAGAKI Hiroshi
f206c01844
luci-base: update Japanese translation
...
Updated Japanese translations.
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2019-09-15 20:08:14 +09:00
INAGAKI Hiroshi
ec631c4960
i18n: sync translations
...
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2019-09-15 19:15:17 +09:00
Jo-Philipp Wich
2e206861ae
luci-base: luci.js: append version when dynamically loading classes
...
This allows for some naive cache busting when the LuCI version changes,
to avoid loading outdated classes from cache.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-14 17:44:32 +02:00
Jo-Philipp Wich
208bf47a33
luci-base: cbi.js: update dependencies after widgets have been rendered
...
Fixes : #3066
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-14 17:20:41 +02:00
Jo-Philipp Wich
7c9d1a259c
luci-base: network.js: register "none" protocol
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-14 17:04:02 +02:00
Jo-Philipp Wich
88c16e17d9
luci-mod-network: wireless.js: restore mac hints in mac list widget
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-13 14:19:33 +02:00
Jo-Philipp Wich
2dd17fad6c
luci-base: network.js: implement Hosts.getMACHints()
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-13 14:18:43 +02:00
Jo-Philipp Wich
3734f88c35
luci-base: fix ip6hint option dependencies and validation
...
Ref: https://forum.openwrt.org/t/odhcpd-make-lease-file-persistent/44118/8
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-13 12:57:08 +02:00
Jo-Philipp Wich
b384683d14
Merge pull request #3060 from tano-systems/pr/update-ru-i18n
...
luci-base: Update Russian translation
2019-09-13 11:06:30 +02:00
Anton Kikin
8e171a9f3d
luci-base: Update Russian translation
...
Signed-off-by: Anton Kikin <a.kikin@tano-systems.com>
2019-09-13 00:13:04 +03:00
Franco Castillo
da2ec04075
luci-base: update Spanish translation
...
Signed-off-by: Franco Castillo <castillofrancodamian@gmail.com>
2019-09-12 16:34:11 -03:00
Franco Castillo
37efc4f918
luci-base: update Spanish translation
...
Signed-off-by: Franco Castillo <castillofrancodamian@gmail.com>
2019-09-12 16:06:32 -03:00
Jo-Philipp Wich
af19ebb706
luci-mod-system: improve LED configuration page
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-12 19:22:59 +02:00
Jo-Philipp Wich
fad01ae1a4
luci-base: sys.lua: fix init script enable action
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-12 18:56:24 +02:00
Jo-Philipp Wich
53516cc302
luci-mod-system: add heading to startup page, improve error reporting
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-12 18:55:50 +02:00
Jo-Philipp Wich
0e5be0d68a
luci-mod-system: reimplent system/crontab as client side view
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-12 18:48:58 +02:00
Jo-Philipp Wich
8178ac15b6
luci-base: whitelist file/write actions on /etc/rc.local
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-12 14:42:12 +02:00
Jo-Philipp Wich
0eb5661e8c
luci-mod-system: restore rc.local editing functionality
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-12 14:41:30 +02:00
Jo-Philipp Wich
113e2c0217
luci-mod-system: reimplent system/startup as client side view
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-12 14:16:06 +02:00
Jo-Philipp Wich
473bd2741b
luci-base: rpc.js: fix list requests, handle aborted http requests
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-12 14:02:06 +02:00
Jo-Philipp Wich
cc81d5a0d4
luci-base: fix list method handling in ubus-rpc protocol proxy
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-12 14:00:47 +02:00
Jo-Philipp Wich
2cc6ff7f6b
luci-base: drop unused tools.status.switch_status() call
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-12 11:09:57 +02:00
Jo-Philipp Wich
82743b3bd4
luci-mod-network: reimplement switch configuration as client side view
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-12 11:09:57 +02:00
Jo-Philipp Wich
5fd21bc9ef
luci-base: add luci/getSwconfigFeatures and luci/getSwconfigPortState
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-12 11:09:57 +02:00
Jo-Philipp Wich
9be42e29e7
luci-base: form.js: handle non-string values in stripTags()
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-12 11:09:57 +02:00
Jo-Philipp Wich
441bd24d07
Merge pull request #3056 from musashino205/l10n/base-upd-ja
...
luci-base: update Japanese translation
2019-09-12 10:12:33 +02:00
INAGAKI Hiroshi
3b4c4bf415
luci-base: update Japanese translation
...
Updated Japanese translations.
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2019-09-12 16:55:38 +09:00
Yurii
2faa39cee3
luci-base: update Ukrainian translation
...
Update Ukrainian translation according the latest translation resync. Сorrections and additions.
Signed-off-by: Yurii <yuripet@gmail.com>
2019-09-12 02:46:17 +03:00
Jo-Philipp Wich
5e7e9b58cf
luci-base: restore some lost translations and update german
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-11 14:03:11 +02:00
Jo-Philipp Wich
16bcd1a364
luci-base: resync translations
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-11 12:58:18 +02:00
Jo-Philipp Wich
34e73fd983
luci-base: widgets.js: fix display quirk in tools.widgets.DeviceSelect
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-11 12:44:34 +02:00
Jo-Philipp Wich
c96de72043
luci-base: validation.js: implement length() datatype validator
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-11 12:28:58 +02:00
Jo-Philipp Wich
f32f42bc25
luci-mod-network: add missing dependency on rpcd-mod-iwinfo
...
Fixes: 963b7636b
("luci-mod-network: switch to client side wifi configuration pages")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-11 12:27:02 +02:00
Jo-Philipp Wich
34f2c0acdb
luci-base: view.htm: catch and render exceptions on view instantiation
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-11 12:21:51 +02:00
Jo-Philipp Wich
a0d1294566
luci-base: luci.js: register rpc interceptor to catch expired sessions
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-11 12:21:24 +02:00
Jo-Philipp Wich
c3ddcbb542
luci-base: luci.js: rework error handling
...
- Capture stack trace in L.raise() if passed type is not an Error instance
- Use L.ui.addNotification in L.error() to render the error message
- Prevent duplicate error reporting in the ui
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-11 12:21:05 +02:00
Jo-Philipp Wich
f141433f5e
luci-base: rpc.js: revamp error handling, add interceptor support
...
Add two new functions L.rpc.addInterceptor() and L.rpc.removeInterceptor()
which allow to register and remove interceptor functions which are invoked
before the rpc reply result promise is fulfilled.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-11 09:25:11 +02:00
Jo-Philipp Wich
94a9f600d3
luci-base: ui.js: implement addNotification() helper
...
The L.ui.addNotification() function pushes a dismissable banner message to
the top of the view.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-11 09:22:13 +02:00
Jo-Philipp Wich
5dc61be746
luci-base: replace luci/getHostname with generic file/read rpc operation
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:29:15 +02:00
Jo-Philipp Wich
9cae3b9e67
protocols: replace luci/getTTYDevices calls with generic file/list ones
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:29:04 +02:00
Jo-Philipp Wich
5697ebbef5
luci-base: add hostapd/wpa_supplicant cli feature flags
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
963b7636b4
luci-mod-network: switch to client side wifi configuration pages
...
Rewrite the wireless network management views in client side JS using ubus
rpc calls for the router communication.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
dab0a11b73
luci-base: form.js: store pointer to parent map in modal overlay map
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
03f9528847
luci-base: form.js: pass-through promise in handleAdd
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
18e6b17911
luci-base: network.js: add getHostHints() api
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
3f93650901
luci-base: use cgi-io and rpcd-mod-file to handle file upload and browsing
...
Remove the old server side support for file browsing and file uploading
and switch to a client side widget instead which uses XMLHTTPRequests to
upload files via cgi-io and RPC calls for file listing and status queries.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
1fcf34510a
luci-base: cbi.js: handle ui elements which return a promise in render()
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
6d9a23af60
luci-base: cbi.js: fix unintended number sign overflow in format
...
Fixes : #3003
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
642b8277df
luci-base: form.js: use createHandlerFn() for click actions
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
eac8316e0d
luci-base: luci.js: use createHandlerFn() for page actions
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
e14b884771
luci-base: form.js: do not consider inactive fields for dependency checks
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
aef4bc3a23
luci-base: rpc.js: add getStatusText() call
...
The new function allows translating an ubus return code into a human
readable error message.
Also report the called object and method on ubus rpc errors.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
93af8a3af8
luci-base: network.js: fix, rework and improve wireless state handling
...
- Use new getWirelessDevices rpc method to optimize data fetching
- Implement further getters to access iwinfo information
- Implement assoc- and scan list functions
- Simplify internal data model
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
8cd40eb1e6
luci-base: add getWirelessDevices() rpc method
...
The getWirelessDevices() method merges the results of the
network.wireless/status call with corresponding per-radio and
per-network iwinfo data.
This allows to simplify the client side network state model
implementation and saves extraneous rpc roundtrips to fetch
iwinfo data after discovering the wireless devices.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
8481330e42
luci-base: luci.js: support passing FormData as request payload
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
d5e6688072
luci-base: luci.js: support registering request progress handlers
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
88969529f1
luci-base: luci.js: fix L.Poll.remove()
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
14b6ea6ea7
luci-mod-network: slightly improve static lease config
...
- Autoselect the matching IPv4 address when initially picking a MAC
- Add hostname hints in the MAC/IP dropdowns
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
ac56dc057d
luci-base: form.js: use createHandlerFn() for modal button actions
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
c352fbf5e9
luci-base: form.js: disable write/remove actions for DummyValue widgets
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
06f4feca1d
protocols: drop server side cbi implementations of protocol handlers
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
e4bc192012
luci-mod-network: switch to client side interface configuration pages
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
6a2a53a829
protocols: add client side protocol handler implementations
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
0674fc2041
luci-base: rpcd: add getHostname and getTTYDevices calls
...
Also add IPv6 feature indication.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
55b1ae6c9b
luci-base: network.js: add hacks to enable relay protocol support
...
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
d905dacf97
luci-base: ui.js: update tabs after initial render
...
This ensures that the error badges are properly set.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00
Jo-Philipp Wich
745878d6cd
luci-base: form.js: rework section add/remove event handling
...
- Redraw map even when it could not be saved due to validation errors
- Use createHandlerFn() for attaching event handlers
- Convert buttons to <button> element to allow use of spinning class
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10 15:28:16 +02:00