summaryrefslogtreecommitdiffhomepage
path: root/modules/luci-base/htdocs
AgeCommit message (Collapse)Author
2020-03-23form.js: use CSS .btn class for drag handlesJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-03-23luci-base: luci.js: tweak CSS classesJo-Philipp Wich
- use .btn CSS class for Save & Apply button - use .control-group CSS class for page action buttons Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-03-23luci-base: ui.js: various tweaksJo-Philipp Wich
- emit checkbox markup suitable for CSS styling - use .btn CSS class where appropriate - dispatch events when updating uci change indicator - use correct target node when handling events in createHandlerFn() Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-03-04Merge pull request #3712 from TDT-AG/pr/20200303-luci-baseJo-Philipp Wich
luci-base: extended network.js for check if new interface is createable
2020-03-03luci-base: network.js: gracefully handle deleteConfiguration() rejectsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-03-03luci-base: network.js: add Protocol.deleteConfiguration() callbackJo-Philipp Wich
Add a new Protocol.deleteConfiguration() callback function which can be overridden by protocol handler to perform additional cleanup tasks, such as unsetting related uci entries which are not part of the interface configuration itself. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-03-03luci-base: extended network.js for check if new interface is createableHelge Mader
Signed-off-by: Helge Mader <ma@dev.tdt.de>
2020-03-02luci-base: firewall.js: don't treat zone name as network fallbackJo-Philipp Wich
Drop obsolete extra logic which treats the zone name as covered network name in case the network list is unset. This behaviour applied to the pre-fw3 uci firewall, but is not supported since fw3 anymore. Ref: https://forum.openwrt.org/t/luci-zone-creation-bug/55921 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-02-14luci-base: cbi.js: avoid double-initialization of dropdownsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-02-14luci-base: cbi.js: handle translation contexts in _()Jo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-02-14luci-base: luci.js: L.dom.data(): gracefully handle non-node argumentJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-02-13luci-base: form.js: pass section_id to Button onclick handlerJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-02-13luci-base: form.js: ButtonValue: pass sid as first onclick argumentJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-02-12luci-base: fs.js: exec_direct(): add ability to encode command as latin1Jo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-02-12luci-base: form.js: rendering fixes for grid sectionsJo-Philipp Wich
- Ensure that last header cell is rendered for grid sections without sorting or addremove actions - Don't skip header cells for optional options Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-02-12luci-base: ui.js: dispatch "cbi-tab-active" event when a tab is selectedJo-Philipp Wich
This is useful to lazy-load tab contents. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-01-31luci-base: validation.js: fix integer and float type validationJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-01-30luci-base: fs.js: support Blob/JSON in read_direct() and exec_direct()Jo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-01-30luci-base: luci.js: allow overriding response type for requestsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-01-28luci-base: add L.media() URL construction helperJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-01-22luci-base: cbi.js: support plural translations and disambiguation contextsJo-Philipp Wich
- Implement `N_(count, "String singular", "String plural" [, "Context"])` plural translation function. - Extend `_()` to optionally accept a second disambiguation context argument. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-01-20luci-base: ui.js: UIFileUpload fixesJo-Philipp Wich
- Introduce a new option `initial_directory` which describes the initial directory to display when nothing is selected, default to the root directory - Prevent stray legacy cbi reloads when deselecting files - Fix within-root-directory-check for initial rendering Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-01-19luci-base: form.js: add a new "contains" dependency modeJo-Philipp Wich
By tagging option dependencies with `!contains`, dependencies are considered satisfied when the value is contained in the value of a related field, instead of being equal to it. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-01-19luci-base: form.js: don't stringify node arguments in CBIValue.value()Jo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-01-19luci-base: ui.js: support clearChoices()/addChoices() for DynListsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-01-19luci-base: ui.js: use placeholder as select placeholder in DynListsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-01-19luci-base: ui.js: properly handle rich choices in Dropdowns, DynListsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-01-16luci-base: cbi.js: collapse whitespace before language string hashingJo-Philipp Wich
To mirror the behavior of the Lua runtime, we need to collapse whitepace in translation source strings before doing the string table lookup. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-01-16Merge pull request #3511 from Ansuel/no-hardJo-Philipp Wich
luci-base: remove hardcoded cgi-bin path
2020-01-16luci-base: make rpc webserver path configurableAnsuel Smith
Currently the ubus path that provide the webserver is hardcoded to be /ubus. Change this to make it configurable from the luci config file. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2020-01-16luci-base: remove hardcoded cgi-bin pathAnsuel Smith
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-15luci-base: form.js: fix immediate validation of activated optionsJo-Philipp Wich
When form options are activated because their dependencies are satisified, ensure that an immediate validation is triggered to highlight potential errors without having the user to activate another form control first. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-12-30luci-base: form.js: implement AbstractValue.getUIElement()Jo-Philipp Wich
Introduce a new method `getUIElement()` which simplifies obtaining the underlying per-section UI widget class instance for a from option object. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-12-30luci-base: ui.js: implement UIDropdown.{add,clear}Choices()Jo-Philipp Wich
The new `addChoices()` and `clearChoices()` functions allow clearing and adding new options to existing dropdown instances respectively. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-12-30luci-base: ui.js: expose UIElement class as AbstractElementJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-12-18luci-base: fs.js: properly escape arguments in exec_direct()Jo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-12-18luci-base: fs.js: add read_direct() and exec_direct() functionsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-12-17luci-base: fix typosBalázs Úr
Signed-off-by: Balázs Úr <balazs@urbalazs.hu>
2019-12-16luci-base: ui.js: allow custom validation in Dropdown and DynamicListJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-12-04luci-base: ui.js: ensure that select choice labels are properly escapedJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-12-04luci-base: ui.js: properly escape dynlist items for renderingJo-Philipp Wich
Ref: https://forum.openwrt.org/t/luci-theme-openwrt-reports-error/49736 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-26luci-base: luci.js: further nested Class.super() call fixesJo-Philipp Wich
Use stacks keyed by class id + symbol internally to not clobber the prototype scope pointer when repeatedly calling super() in invoked methods. Ref: https://github.com/openwrt/luci/issues/3316#issuecomment-558531111 Fixes: 374c23cda ("luci-base: luci.js: properly handle nested Class.super() calls") Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-26luci-base: luci.js: properly handle nested Class.super() callsJo-Philipp Wich
Introduce a unique __id__ attribute per class and use that, together with the symbol name being looked up to, to form a unique key which is used to store the prototype scope pointer. This fixes cases where a call to super() invokes a procedure which is calling super() as well on a different class or symbol. Fixes: #3316 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-22luci-base: validation.js: fix "unique" validatorJo-Philipp Wich
Previous refactoring renamed the "data-type" attribute of widget markup containers to "data-widget", breaking the "unique" validator as it relies on it to lookup options. Fixes: #3341 Fixes: 13e9e3e9e ("treewide: fix "Unhandled token" errors with Lua CBI maps") Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-16treewide: fix "Unhandled token" errors with Lua CBI mapsJo-Philipp Wich
The `data-type` attribute is used to bind datatype validators to a widget while some templates used the same attribute to denote the name of the underlying widget. Change the `data-type` attributes referring to the widget name to `data-widget` in order to stop the JS token error spam. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-15luci-base: Improve change application messageKevin Darbyshire-Bryant
As a native English speaker the luci message displayed when clicking 'Save & Apply' has a somewhat uncomfortable English phrasing of "Waiting for configuration to get applied". It could be improved by replacing 'get' with 'be' but once you've got that far you might as well replace this with the shorter & simpler "Applying configuration changes". This is also technically more correct since luci/openwrt should only be updating/restarting processes that are related to the changed areas, not changing the entire configuration. As a result of that, change both the 'success' and 'rolled back' messages to "Configuration changes have been applied" & "Configuration changes have been rolled back" Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2019-11-13luci-base: network.js: fix getDevices()Jo-Philipp Wich
- Don't filter virtual interfaces - Skip duplicate wireless devices Fixes: #3304 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-10luci-base: ui.js: show filename after selecting upload fileJo-Philipp Wich
Fixes: #3286 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-10luci-base: luci.js: add optional apply unchecked actionJo-Philipp Wich
Turn the "Save & Apply" button into a combo button which allows to toggle between apply with rollback and unchecked apply modes. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-10luci-base: ui.js: add ComboButton widgetJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>