summaryrefslogtreecommitdiffhomepage
path: root/modules/luci-base/htdocs
AgeCommit message (Collapse)Author
2021-07-01luci-base: do not add validation for named section if readonly is setFlorian Eckert
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2021-07-01luci-base: prevent empty field for adding new named section in JavaScriptHelge Mader
Suggested-by: Helge Mader <ma@dev.tdt.de> Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2021-07-01luci-base: change css class btn to cbi-buttonFlorian Eckert
The css class btn is only a valid input element on lua rendered pages. Use instead cbi-button for javascript rendered pages. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2021-07-01luci-base: use button tag instead of input tag on named section addFlorian Eckert
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2021-06-12luci-base: network.js: add link status information accessorsJo-Philipp Wich
Fixes: #5121 Fixes: 8c71b1d01e ("luci-mod-network: add port status to bridge vlan filter matrix") Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-06-09luci-base: ui.js: determine dropdown position relative to overflow parentJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-06-05Merge pull request #5070 from blocktrron/pr-luci-wifi6David Bauer
luci-mod-network: add 802.11ax HE support
2021-06-05luci-base: add 11ax HW / HT modesDavid Bauer
Add the known values returned for 802.11ax HW as well as HT modes to the respective method descriptions. Signed-off-by: David Bauer <mail@david-bauer.net>
2021-06-05luci-mod-network: add 802.11ax HE supportDavid Bauer
This commit adds the ability to configure HE-modes for radios (HE20 / HE40 / HE80 / HE160) as well as HE rate information in the assiciation view. Tested-on: Ubiquiti UniFi 6 Lite / LR Signed-off-by: David Bauer <mail@david-bauer.net>
2021-06-03luci-base: network.js: sorting fixesJo-Philipp Wich
Ensure that sort callbacks consistently return [-N .. 0 .. +N] values instead of just true/false. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-06-03treewide: Update JS using luci-rpc getHostHintsNiels Widger
Update frontend JS code which uses luci-rpc getHostHints to support the new response format which removes the `ipv4` and `ipv6` host hint string fields and replaces them with `ipaddrs` and `ip6addrs` weighted string list fields. Signed-off-by: Niels Widger <niels@qacafe.com> [rework code to be forwards/backwards compatible, fix some Network.Hosts methods, fix IP choice ordering, change commit subject, rewrap commit message] Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-06-02Merge pull request #4770 from nickberry17/update_DummyValueJo-Philipp Wich
luci-base: add new member 'hidden' to DummyValue
2021-06-01luci-base: form.js: consider aliased options in AbstractValue.remove()Jo-Philipp Wich
If different options point to the same underlying uci option, we must only remove the uci value if none of the other alias options is active in order to prevent inactive options (due to unsatisfied depends) removing the uci value of active once on save. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-05-31luci-base: fix `network` data type validationJo-Philipp Wich
Fixes: #5085 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-05-28treewide: drop MAC and MTU from interfaces (protocols)Rafał Miłecki
Those are L2 options that are not part of interfaces (L3), should not be set there and don't work. Setting MAC and MTU should be done at device layer (config device) and is supported for basic types already. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2021-05-27treewide: use "device" option in UCI "interface" sectionsRafał Miłecki
netifd has been recently patched to use "device" option instead of "ifname" as more clear & accurate. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2021-05-04luci-base: change button-text from Dismiss to Close in UCI changes overviewSven Roederer
Change the left button of the UCI Apply-changes overview to the more correct function close. This also avoids confusion between Dismiss and Revert, which translate to the same in german. Signed-off-by: Sven Roederer <devel-sven@geroedel.de>
2021-04-16luci-base: form.js: fix AbstractValue.textvalue() for uci list optionsJo-Philipp Wich
Serialize the uci list value into a space separated string before passing it to String.format() for HTML escaping. Without that change, empty strings were returned whenever the underlying uci get operation yieled an array. Fixes: #4993 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-03-29luci-base: uci.js: merge changes when retrieving entire sectionsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-03-29luci-base: ui.js: fix UICheckbox widget operation when tooltips are setJo-Philipp Wich
When a tooltip is rendered for a checkbox widget, an additional node is placed after the checkbox label element, breaking DOM selectors in bind(), isChecked(), setValue(). Apparently the functionality was never actually tested. Fixes: #4938 Fixes: e951236e3 ("luci-base: add tooltip handling") Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-03-18luci-base: network.js: recognize DSA ports and bridge VLANsJo-Philipp Wich
Use the newly introduced devtype attribute for more robust network device type detection. This also allows us to easily recognize DSA ports. Furthermore, synthesize VLAN devices declared by uci bridge-vlan sections, similar to how it is done for legacy swconfig switch_vlan ones. Finally implement a new Network.Device.getParent() method to use the newly available "parent" attribute to resolve the base device of DSA ports or VLAN devices. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-03-15treewide: remove rendundant proto handler optionsJo-Philipp Wich
The introduction of network device configuration support also implemented all common, protocol-independent interface options directly in the interface config view, so drop the redundant option definitions. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-03-01luci-base: validation.js: optionally support negative prefixesJo-Philipp Wich
Support negative prefix length in the `cidr`, `cidr4`, `cidr6`, `ipmask`, `ipmask4` and `ipmask6` data types when an optional truish flag is passed to the datatype name. Ref: #4812 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-03-01luci-base: network.js: sort interface statuses by metric, then nameJo-Philipp Wich
Fixes: #4693 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-03-01luci-base: firewall.js: manage zomne networks as listJo-Philipp Wich
Fixes: #4827 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-02-19luci-base: ui.js: resolve parent ul early in UIDropdown.toggleItem()Jo-Philipp Wich
The parent node of the current li might be null after collapsing the dropdown, so resolve the parent ul early to avoid passing null to subsequent calls. Fixes clearing custom input values in DynamicList dropdowns. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-02-10luci-base: luci.js: fix sortedKeys() orderingJo-Philipp Wich
Chrome does not properly sort arrays when the sort function returns boolean results, in contrast to Firefox which does. Fix the issue by returning a numerical result instead. Fixes: #4792 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-02-10luci-base: add new member 'hidden' to DummyValueNicholas Smith
Signed-off-by: Nicholas Smith <nicholas@nbembedded.com>
2021-01-20treewide: minor fixes to typos, whitespace, and indentationGiovanni Giacobbi
Signed-off-by: Giovanni Giacobbi <giovanni@giacobbi.net>
2021-01-19luci-base: luci.js: fix `LuCI.request.poll.add()` exception handlingGiovanni Giacobbi
The try/catch is meant for the `res.json()` call and should apply to that. As it was before, an exception inside the poll callback would cause the callback to be reinvoked without the JSON parameter, which is an odd behaviour. Moreover, it makes it hard to debug because it is completely hidden from the browser console. We now differentiate between exceptions thrown due to bad JSON in `responseText` from exceptions generated inside the callback itself, which are let through for browser console logging. Signed-off-by: Giovanni Giacobbi <giovanni@giacobbi.net>
2021-01-13luci-base: make tooltip icon string configurableFlorian Eckert
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2021-01-13luci-base: add tooltip handlingFlorian Eckert
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2021-01-07Merge pull request #4598 from Ansuel/wifi_chanHannu Nyman
luci-mod-status: add new channel analysis page
2020-11-27treewide: transition div tables to actual table markupJo-Philipp Wich
Modern browsers allow decomposing table markup equally well as nested div constructs, therefor migrate our <div> table markup to actual <table> tags but keep the old table/tr/th/td CSS classes for now to allow for a smooth theme transition. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-11-24luci-base: delay cbi-tab-active event on tab initAnsuel Smith
Delay the cbi-tab-active custom event so any eventListner attached to the tab doesn't miss the first event. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2020-11-18luci-base: generalize random color generationAnsuel Smith
Generation of pseudo random hex color from a string can be useful also for other task. Generalize it to make it available also for other purpose. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2020-11-07luci-base: tools.widgets.NetworkSelect: properly validate multi selectJo-Philipp Wich
Fixes: 2b99473f2 ("luci-base: tools.widget.NetworkSelect: disallow invalid network names") Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-11-07luci-base: tools.widget.NetworkSelect: disallow invalid network namesJo-Philipp Wich
Fixes: #4523, #4573 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-10-30Merge pull request #4531 from oldium/add-widget-changedJo-Philipp Wich
luci-base: Fix using isActive in widget-change notification.
2020-10-30luci-base: Fix using isActive in widget-change notification.Oldřich Jedlička
The `onchange` notification handler is called too early to be able to evaluate other widget's `isActive()` status. Solve this by changing order of event handling - first register/execute `map.checkDepends` and then `onchange`. Fixes: openwrt/luci#4516. Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
2020-10-24luci-base: Replace legend element with h3.Oldřich Jedlička
The legend HTML element is allowed only as first element in fieldset, so use h3 instead, which is rendered the same within themes. Fixes #3149. Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
2020-10-06luci-base: network.js: Show clients also from wifi VLANs.Oldřich Jedlička
Iterate through VLANs to get the clients connected on configured wifi VLANs (as configured by `wifi-vlan` sections in `wireless` configuration). This is a minimum support for VLANs on wireless network. The VLAN name is nowhere displayed, but at least clients using VLANs are visible. Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
2020-09-23luci-base: don't append object.method to the RPC urlRafał Miłecki
It was a cosmetic feature that doesn't work anymore with the latest uhttpd ubus API. Adding RESTful API resulted in treating URL part following the /ubus/ as the new API request. Suggested-by: Rafał Miłecki <rafal@milecki.pl> Fixes: #4465 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-09-19luci-base: make translatable default values for dhcp hostnameAnton Kikin
We must be able to translate these values. Fixes: fd75c2b7c ("luci-base: add default value options dhcp hostname") Signed-off-by: Anton Kikin <a.kikin@tano-systems.com>
2020-09-16luci-base: add default value options dhcp hostnameFlorian Eckert
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2020-09-16luci-base: dhcp.js: allow hostname to be "*"Jo-Philipp Wich
Fixes: #4430 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-09-15luci-base: use actual JSON-RPC for verifying ubus RPC URLRafał Miłecki
Sending GET request to the main RPC base URL and expecting HTTP response code 400 had two flaws: 1. It was not verifying actual JSON-RPC interface availability 2. It did not allow implementing support for new requests Signed-off-by: Rafał Miłecki <rafal@milecki.pl> Acked-by: Jo-Philipp Wich <jo@mein.io>
2020-08-06luci-base: form.js: implement AbstractSection.getOption() helperJo-Philipp Wich
The `getOption()` function allows to easily obtain a reference to another option object instance within the same section. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-08-06luci-base: ui.js: implement AbstractElement.isChanged()Jo-Philipp Wich
The new `isChanged()` utility functions allows to query the dirty state of an ui input widget. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-08-05luci-base: network.js: recognize uci declared network devicesJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>