summaryrefslogtreecommitdiffhomepage
path: root/modules/luci-base/luasrc/view
AgeCommit message (Collapse)Author
2020-04-16luci-base: expose currently dispatched node info to client side JSJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-04-12luci-base: luci.js: add LuCI.fspath() helperJo-Philipp Wich
The LuCI.fspath() function allows constructing absolute filesystem paths from path segments relative to the document root. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-04-03luci-base: ui.js: add instantiateView() helperJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-03-26luci-base: add missing .btn CSS classes to sysauth templateJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-03-13luci-base: ensure that ubus path uses trailing slashJo-Philipp Wich
Without the trailing slash, probing endpoint availability will fail. Fixes: 529bde440 ("luci-base: make rpc webserver path configurable") 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-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>
2019-12-16luci-base: expose effective dispatched path to client side environmentJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-03treewide: move server side CBI support to luci-compatJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-03treewide: move templates and libraries not used by the core to luci-compatJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-01luci-base: remove unused Lua codeJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-11luci-base: view.htm: catch and render exceptions on view instantiationJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-10luci-base: use cgi-io and rpcd-mod-file to handle file upload and browsingJo-Philipp Wich
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-07-27luci-base: don't treat .rmempty flag as optional for ListValue widgetsJo-Philipp Wich
Restore the old CBI behaviour of not automatically rendering empty selection choices in ListValue select dropdowns when .rmempty is specified. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-26luci-base: fix multiple parameter in cbi templatesAnton Kikin
In the dc0211803e commit, the parameter "multi" in ui.js is replaced with "multiple" everywhere. Thus, it must also be changed in the cbi templates. Fixes: dc0211803e Signed-off-by: Anton Kikin <a.kikin@tano-systems.com>
2019-07-19luci-base: render default values for all server side cbi map widgetsJo-Philipp Wich
Fixes: 9c7eb1dec ("luci-base: switch from server side to client side widget markup") Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: mvalue.htm: fix reading back multi value optionsJo-Philipp Wich
Fixes: 2a229e50c ("luci-base: fix cbi mvalue templates") Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-07luci-base: fix cbi mvalue templatesJo-Philipp Wich
Fixes: 9c7eb1dec ("luci-base: switch from server side to client side widget markup") 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: 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: 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 ES6 Promise polyfill for IE < EdgeJo-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-05-25Merge pull request #2174 from rosysong/lease-statusFlorian Eckert
luci-base: drop ipv6 lease status when IPV6 is not support
2019-05-02luci-mod-admin-full: add dependency for channel autoEnrique Giraldo
Do not show 'auto' channel option if hostapd is not compiled with CONFIG_ACS Signed-off-by: Enrique Giraldo <hgiraldos@gmail.com>
2019-04-08Merge pull request #2642 from TDT-AG/pr/20190329-luci-baseJo-Philipp Wich
luci-base: add cbi tsection error msg option
2019-04-02luci-base: increase max size of network dropdownsJo-Philipp Wich
Fixes: #2646 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-03-29luci-base: add cbi tsection error msg optionFlorian Eckert
In some situation it is usefull to inform the use that this section could not get delete, because this config is referenced or is in use. Example pseudo code: function s.remove(self, sid) <check if secation could get deleted> if output == nil then self.error_msg = translatef("Unable to remove this section") return nil end end Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2019-02-12treewide: avoid double-escaping CBI section labelsJo-Philipp Wich
Since the section labels are already HTML-escaped implicitely by the striptags() function, we must not escape them again in attr() or ifattr(). Fixes: #2524 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-12-29luci-base: rework filebrowser initializationJo-Philipp Wich
Do not call cbi_init() from the browser field template but lazily initialize the field, like it is being done for all other widgets as well. Fixes: #2398 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-12-20luci-base: use default poll intervalFlorian Eckert
Replace all XHR poll time number with -1 so they will use the default poll interval time value from "/etc/config/luci". If this is not set then 5 seconds as default is used. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-12-20modules: use configurable poll intervalFlorian Eckert
Make poll interval configurable. Use option from ---- config core 'main' option pollinterval '5' --- This will only be used if the interval option is less or equal zero. If the poll interval is not configured then a default value of 5 seconds is used. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-12-13luci-base: support cidr list notation for option ipaddr and ip6addrJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-12-12luci-base: fix UCI changelog markup mistakeAnton Kikin
Signed-off-by: Anton Kikin <a.kikin@tano-systems.com>
2018-12-11luci-base: fix syntax error in map.htmJo-Philipp Wich
Fixes #2366. Fixes: 76e9c0305 ("luci-base: rework ui tabbing code") Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-12-10luci-base: rework ui tabbing codeJo-Philipp Wich
- Instantiate tab menus on the client side - Simplify server side markup generation - Show error indicators in cbi tabs Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-22luci-base: do not trigger form action when revealing passwordJo-Philipp Wich
Ref: https://github.com/openwrt/luci/issues/2327 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-22luci-base: introduce common JavaScript apiJo-Philipp Wich
Introduce a new script file luci.js which is included by default and intended to be the common location of functions currently scattered in cbi.js and xhr.js. The luci.js file provides a LuCI() class which - among other things - implements helpers to construct URL paths and making HTTP requests. A singleton instance of the class is instantiated as window.L upon load and preset with the necessary environment information. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-20luci-base: fix apply/rollback stringsJo-Philipp Wich
Commit 94d8c9a7a accidentally overwrite the rewording of strings made in an earlier commit. Fixes: 94d8c9a7a ("luci-base: simplify apply widget code") Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-15luci-base: support disconnecting (deauthenticating) wireless clientsWang805447391
Add a button to each row in the wireless assoclist table to allow disconnecting clients using the ubus del_client method if the underlying radio interface supports it. Ref: https://github.com/openwrt/luci/pull/2271 Submitted-by: Wang805447391 <805447391@qq.com> [move deauth function to luci-base next to the existing assoclist function, require post security, fix parameter check condition, hide button if not supported by the radio, disable button after call, squash commits, fix whitespace, reword subject, add commit message] Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14Merge pull request #2282 from TDT-AG/pr/20181114-luci-baseJo-Philipp Wich
luci-base: allow optional default value for file browser
2018-11-14luci-base: simplify apply widget codeJo-Philipp Wich
- Drop embedded CSS in favor to new global rules - Drop extraneous include of cbi.js - Use showModal() facilities - Fix a cosmetic bug in countdown timeout handling Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14luci-base: rework dynamic list templateJo-Philipp Wich
Commit 7c7821833 ("luci-base, themes: rework dynlist and dropdown widgets") changed the way we initialize dynamic lists on client side, avoiding the need for pre-rendering the items on the server side. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14luci-base: add ARIA label to reveal/hide password buttonJo-Philipp Wich
Fixes #2070. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14luci-base: allow optional default value for file browserFlorian Eckert
With this change we could set optional value for the file browser. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-10-17luci-base: fix cbi dropdown quirks with MS EdgeJo-Philipp Wich
On MS Edge, the behaviour of "value" attributes on "li" elements is unreliable, so use the "data-" prefix to circumvent the problem. Ref: https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/19320991/ Fixes: #2224 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-10-10luci-base: show default forwarding policy in zone forwarding listJo-Philipp Wich
The zone forwarding list widget misleadingly displays the intra-zone forwarding policy as default policy action when no forwardings exist instead of the appropriate global defaults forwarding policy which is the one applied to inter-zone forwarded traffic. Fix the issue by displaying the defaults policy and not the per-zone policy to match what the firewall implementation is actually doing. Fixes: #2213 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-10-10luci-base: validate name in firewall zone selector widgetJo-Philipp Wich
When creating a new zone through the firewall zone selector widget, validate the given name before creating new items. Depends on commit 0b6ae96f2 ("luci-base: cbi.js: recognize invalid input in dropdown create field"). Fixes: #2211 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-10-03luci-base: reword rollback notification dialogJo-Philipp Wich
Rename "Apply unchecked" to "Apply anyway" for better clarity and update the base translation files accordingly. Signed-off-by: Jo-Philipp Wich <jo@mein.io>