summaryrefslogtreecommitdiffhomepage
path: root/modules
AgeCommit message (Collapse)Author
2019-07-07luci-base: introduce form.jsJo-Philipp Wich
Add a new client side form.js library which is a more or less direct reimplementation of the Lua side cbi.lua in JavaScript. Due to its client side nature, it supports a number of features which would be hard to realize on the server side, such as drag&drop sorting, modal sub-map dialogs, reload-free editing etc. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: switch from server side to client side widget markupJo-Philipp Wich
Do not render standard widgets like checkboxes, select boxes, text input fields etc. on the server side anymore but utilize the ui.js primitives instead. This avoids logic duplication between server side cbi templates and JS widgets in the future. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: cbi.js, ui.js: add custom validation callbacks, new ui widgetsJo-Philipp Wich
Implement further widget primitives like text inputs or checkboxes and support custom validation callback functions when instantiating CBI validators. Also add support initializing ui.js widgets from the "data-ui-widget" HTML attribute. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: add client based view actionsJo-Philipp Wich
Introduce a new view() target for CBI dispatch nodes, as long with the required template and plumbing work in luci.js to allow requiring view classes. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: luci.js: tweak error handlingJo-Philipp Wich
If the ui class is loaded, use its modalDialog facility to display runtime errors, alternatively render them into the maincontent area. Also prevent duplication of stack trace information and throw a low level error on session expiration to allow higher layers to properly handle it. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: replace uci change pages with client side modal dialogJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: add uci.js and rpc.js classesJo-Philipp Wich
Add a new rpc.js class which provides low level facilities to exchanges messages with the ubus rpc endpoint. Also introduce a new uci.js class which provides client side uci manipulation routines. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: add ubus-http gatewayJo-Philipp Wich
Add an admin/ubus route mimicking the native uhttpd-mod-ubus protocol. The main difference to the native protocol is that this gateway requires no additional per-object/procedure ACL setup on the router side and that it is located under the same prefix as LuCI itself, allowing the reuse of the session login cookie. This route is meant to be a transitional mechanism until client side RPC calls are eventually migrated to uhttpd-mod-ubus completely. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: move dropdown, combox and dynlist widget code to L.uiJo-Philipp Wich
Move the widget code to the ui class and replace it with compatibility shims in cbi.js Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: luci.js: add L.dom.data()Jo-Philipp Wich
Add a new data() function which allows to attach arbitrary JS data to DOM elements. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: cbi.js: support field validation for formless inputsJo-Philipp Wich
JS CBI fields have no parent form element anymore. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: cbi.js: untangle dropdown and dynlists from dependency updateJo-Philipp Wich
In order to prepare the move of the dynlist and dropdown widgets into the LuCI ui class, remove the direct calls to cbi_d_update() and replace them with custom events instead. Extend cbi_init() to handle these custom events and to invoke cbi_d_update() when receiving them. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: luci.js: add L.bind() helperJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: luci.js: consolidate error handlingJo-Philipp Wich
Add a new function L.error() which creates and throws a custom error object with stack information and given type. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: luci.js: convert LuCI.dom to Class instanceJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: luci.js: split ui helper functions into external ui.jsJo-Philipp Wich
Use the new class loader infrastructure to move gui specific functionality out of the luci.js core and dispatch a new event 'luci-loaded' which is fired once all external classes have been fetched. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: luci.js: add dynamic class loaderJo-Philipp Wich
Introduce L.require() to fetch additional JavaScript classes. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: luci.js: convert LuCI to Class instanceJo-Philipp Wich
Also hijack cbi_init() and call it after the LuCI DOM setup. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: luci.js: add HTTP request functionsJo-Philipp Wich
Add a fetch() inspired HTTP request utility class to luci.js and replace the old xhr.js class with a stub using the new request api. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: luci.js: add class construction helperJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: add ES6 Promise polyfill for IE < EdgeJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: luci.js: add Object.assign polyfillJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-06luci-base: hide autocomplete-preventing password input with bigger offsetYousong Zhou
Fixes openwrt/luci#2624 Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-07-06luci-base: nowrap for password input and reveal buttonYousong Zhou
Fixes openwrt/luci#2624 Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-07-05timezone data: update to 2019bHannu Nyman
Update timezone data to 2019b http://mm.icann.org/pipermail/tz-announce/2018-December/000055.html http://mm.icann.org/pipermail/tz/2019-July/028249.html 2019a: * Palestine "springs forward" on 2019-03-30 instead of 2019-03-23. * Brazil no longer observes DST. 2019b: * Palestine's 2019 spring-forward transition was on 03-29, not 03-30. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2019-07-02luci-base: fix typo in german translationMartin Schiller
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2019-07-01luci-base: add german translations for led triggerMartin Schiller
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2019-07-01luci-mod-system: fix flash activity trigger nameMartin Schiller
The former name "Flashmemory write access" is wrong. The triggers also indicate read/erase access to the flash memories. Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2019-06-28luci-base: show niced processes on Status/Processes pageHannu Nyman
Modify the process status filter to allow also the processes with a nice value to be visible on the Status/Processes page. Filter out the top process itself. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2019-06-28luci-mod-system: fix some led trigger name translationsMartin Schiller
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2019-06-28Merge pull request #2061 from Ansuel/improveconnFlorian Eckert
luci-mod-admin-full: improve connection page lookup loop
2019-06-26luci-mod-network: os-release variables have been renamed to OPENWRT_Bjørn Mork
commit 8a34a54b6aa6 ("base-files: use OPENWRT prefix for os-release variables") changes the prefix of the os-release variables from LEDE_ to OPENWRT_. Use the new name. Signed-off-by: Bjørn Mork <bjorn@mork.no>
2019-06-22luci-base: Update Spanish translationFranco Castillo
Update Spanish translation Signed-off-by: Franco Castillo <castillofrancodamian@gmail.com>
2019-06-12luci-mod-system: prevent clearing rc.local on unrelated submit actionsJo-Philipp Wich
Fixes: #2760 Fixes: 1c09ee5e4 ("luci-mod-system: fix SimpleForm usage on file editing pages") Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-06-12luci-base: update Traditional Chinese translationPerry Thompson
Signed-off-by: Perry Thompson <contact@ryper.org>
2019-06-11luci-base: update Traditional Chinese translationa962702
update Traditional Chinese translations. Signed-off-by: Andy Yun <a962702@yahoo.com>
2019-06-11luci-base: update Traditional Chinese translationAndy
update Traditional Chinese translation. Signed-off-by: Andy Yun <a962702@yahoo.com>
2019-06-09i18n: sync translationsHannu Nyman
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2019-06-05luci-base: update Russian translationAnton Kikin
Signed-off-by: Anton Kikin <a.kikin@tano-systems.com>
2019-06-05luci-mod-system: fix SimpleForm usage on file editing pagesJo-Philipp Wich
When a value identical to the stored one is submitted, the CBI framework will not emit an option write event and therfore not store the value in the form data dictionary passed to SimpleForm.handle(). This usage pattern usally works be accident for file editor views such as admin_system/crontab because \r\n windows style line endings are substituted with unix \n ones before writing the data, defeating the equality check in CBI. When a single line without trailing newline is submitted however, the CBI will not see a difference to the data stored in the file and clear out the value on subsequent saves. This commit alignes the logic used by various SimpleForm views to behave identically and predictable: - File data is handled in the SimpleForm.handle() callback - The forcewrite property is used to disable equality checks - Submission of an empty string empties the backing file Fixes: #2737 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-06-04luci-base: fix duid_to_mac reference in status.luaDirk Brenken
* fix for openwrt/packages#9148 Signed-off-by: Dirk Brenken <dev@brenken.org>
2019-06-03luci-base: handle dhcp lease from odhcpdAnsuel Smith
Currently only the dnsmasq lease file is read for hostname hint. If someone use only odhcpd as dhcp daemon the hostname resolution on wifi_assoc list is broken. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2019-06-03luci-base: adds duid_to_mac to sys.luaAnsuel Smith
Move duid_to_mac function from status.lua to sys.lua. Implement translation from DUID-LL without header to MAC Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2019-05-29Merge pull request #2670 from TDT-AG/pr/20190410-luci-mod-networkFlorian Eckert
luci-mod-network: move auto option to general tab
2019-05-25Merge pull request #2174 from rosysong/lease-statusFlorian Eckert
luci-base: drop ipv6 lease status when IPV6 is not support
2019-05-18luci-base: Update German translationLars Kruse
The following changes are included: * properly handle "Präfix" as neuter * add missing hyphens to many appearances of "Präfix" * fix spelling * add few missing translations Signed-off-by: Lars Kruse <devel@sumpfralle.de>
2019-05-17Merge pull request #2716 from castillofrancodamian/baseHannu Nyman
luci-base: Update Spanish translation
2019-05-17luci-base: zh_CN: update Simplified Chinese translationZheng Qian
Signed-off-by: Zheng Qian <sotux82@gmail.com>
2019-05-16luci-base: Update Spanish translationFranco Castillo
Update Spanish translation Signed-off-by: Franco Castillo <castillofrancodamian@gmail.com>
2019-05-15luci-base: Update Spanish translationFranco Castillo
Update Spanish translation Signed-off-by: Franco Castillo <castillofrancodamian@gmail.com>