oweals/luci.git
4 years agoluci-base: rpc.js: add ability to reject nonzero ubus statuses
Jo-Philipp Wich [Fri, 10 Apr 2020 20:50:41 +0000 (22:50 +0200)]
luci-base: rpc.js: add ability to reject nonzero ubus statuses

Add a new declare option `reject` which makes the generated RPC call
function reject with an error in case the remote ubus call returned
a non-zero status.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit bd713f870a974d46b214d07d85ac4a895d85a122)

4 years agoluci-base: cbi.js: handle translation contexts in _()
Jo-Philipp Wich [Fri, 14 Feb 2020 07:42:04 +0000 (08:42 +0100)]
luci-base: cbi.js: handle translation contexts in _()

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 5258080ce32b973e80111abd41fec82bf9b5e31e)

4 years agoluci-base: cbi.js: support plural translations and disambiguation contexts
Jo-Philipp Wich [Wed, 22 Jan 2020 20:56:28 +0000 (21:56 +0100)]
luci-base: cbi.js: support plural translations and disambiguation contexts

 - 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>
(cherry picked from commit 894752610d80a2fa1cdb6a845526728eeb0bc984)

4 years agoluci-base: form.js: forward section ID in CBISectionValue methods
Jo-Philipp Wich [Mon, 4 May 2020 19:34:12 +0000 (21:34 +0200)]
luci-base: form.js: forward section ID in CBISectionValue methods

This is useful for custom subclasses that want to perform conditional
rendering of contents, depending on the parent section ID.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit f0a0d28fdd22b7904ea9a4efb53a7b791dc6dead)

4 years agoluci-base: form.js: toggle inactive CSS class on unsatisfied field cells
Jo-Philipp Wich [Tue, 28 Apr 2020 07:51:54 +0000 (09:51 +0200)]
luci-base: form.js: toggle inactive CSS class on unsatisfied field cells

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 428e3bd6dc0afcc1ff1c2a62506d66bebc59976f)

4 years agoluci-base: form.js: ListValue: support widget and orientation properties
Jo-Philipp Wich [Tue, 28 Apr 2020 07:50:28 +0000 (09:50 +0200)]
luci-base: form.js: ListValue: support widget and orientation properties

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit daa318c1b2cde1be9df370b1794d660902feab6b)

4 years agoluci-base: form.js: allow to disable descriptions row in TableSection
Anton Kikin [Sun, 19 Apr 2020 02:54:15 +0000 (05:54 +0300)]
luci-base: form.js: allow to disable descriptions row in TableSection

Add 'nodescriptions' property to the TableSection class that allows
to disable displaying table header row with descriptions.

Signed-off-by: Anton Kikin <a.kikin@tano-systems.com>
(cherry picked from commit 7585e5c95adc69a6e86ae19dda5dfb60557cefdb)

4 years agoluci-base: form.js: fix TableSection descriptions row rendering
Anton Kikin [Sun, 19 Apr 2020 02:55:03 +0000 (05:55 +0300)]
luci-base: form.js: fix TableSection descriptions row rendering

In some cases, a table cell at actions column of a descriptions row
may not be rendered. For example, this happens for GridSection when
sorting is disabled:

    s = m.section(form.GridSection, 'section_type');
    s.sortable = false;

Signed-off-by: Anton Kikin <a.kikin@tano-systems.com>
(cherry picked from commit da0e974db5865daf6d634ae5f7649f5b5fc2ef31)

4 years agoluci-base: form.js: implement readonly property for forms and options
Jo-Philipp Wich [Mon, 13 Apr 2020 14:53:10 +0000 (16:53 +0200)]
luci-base: form.js: implement readonly property for forms and options

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 9279448148052950121d7ce205bdd6a1ee353b2e)

4 years agoluci-base: form.js: improve save error handling
Jo-Philipp Wich [Fri, 10 Apr 2020 18:38:58 +0000 (20:38 +0200)]
luci-base: form.js: improve save error handling

Fixes: #3552
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 2dfcca23e4f3edaea2fa5a68a7626a3ab65d3d65)

4 years agoluci-base: form.js: add documentation
Jo-Philipp Wich [Tue, 7 Apr 2020 14:33:09 +0000 (16:33 +0200)]
luci-base: form.js: add documentation

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 698c8ff843253c9785bec9dfdff3774db0eae661)

4 years agoform.js: use CSS .btn class for drag handles
Jo-Philipp Wich [Mon, 23 Mar 2020 20:47:35 +0000 (21:47 +0100)]
form.js: use CSS .btn class for drag handles

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 5d8970d76c7b2dcb415e849553dc09fc58d611c5)

4 years agoluci-base: form.js: rendering fixes for grid sections
Jo-Philipp Wich [Wed, 12 Feb 2020 07:16:06 +0000 (08:16 +0100)]
luci-base: form.js: rendering fixes for grid sections

 - 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>
(cherry picked from commit 9bb78b5cd842f94cbcaf00cc5b19c1e3b9669d93)

4 years agoluci-base: ui.js: reset scroll position when opening modal overlay
Jo-Philipp Wich [Sat, 2 May 2020 21:52:36 +0000 (23:52 +0200)]
luci-base: ui.js: reset scroll position when opening modal overlay

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 4df3a90b3d638e18b9607a5332033df7ceb0ec55)

4 years agoluci-base: ui.js: fix input value reading for select widgets
Jo-Philipp Wich [Sat, 2 May 2020 21:51:22 +0000 (23:51 +0200)]
luci-base: ui.js: fix input value reading for select widgets

Fixes: #3989
Fixes: 81effc111 ("luci-base: ui.js: assume select widget by default for ListValue widget")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit e3ef463ccdd7d32eef1717203bd872272c57793d)

4 years agoluci-base: ui.js: assume select widget by default for ListValue widget
Jo-Philipp Wich [Tue, 28 Apr 2020 13:37:02 +0000 (15:37 +0200)]
luci-base: ui.js: assume select widget by default for ListValue widget

Fixes: #3973
Fixes: 2fb55e1ab ("luci-base: ui.js: fixes for radio widget type of select element")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 81effc111227bc65cb974829f17a45515fbe9807)

4 years agoluci-base: ui.js: fixes for radio widget type of select element
Jo-Philipp Wich [Tue, 28 Apr 2020 07:48:34 +0000 (09:48 +0200)]
luci-base: ui.js: fixes for radio widget type of select element

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 2fb55e1ab5a28c1000a8de6710b6f586f5b88329)

4 years agoluci-base: ui.js: fix textarea width
Jo-Philipp Wich [Sun, 19 Apr 2020 17:34:27 +0000 (19:34 +0200)]
luci-base: ui.js: fix textarea width

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit acae1378a80ca0f87ec3f29de585a6b6328a2c64)

4 years agoluci-base: ui.js: order indicators by ID value
Jo-Philipp Wich [Fri, 17 Apr 2020 07:30:20 +0000 (09:30 +0200)]
luci-base: ui.js: order indicators by ID value

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 01d8283ecea730191ce41302acb7ecd1aaf0631f)

4 years agoluci-base: ui.js: apply disabled attribute to toplevel dynlist node
Jo-Philipp Wich [Thu, 16 Apr 2020 11:19:35 +0000 (13:19 +0200)]
luci-base: ui.js: apply disabled attribute to toplevel dynlist node

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 46d31efc7351231def16be1024eff95c5b792f94)

4 years agoluci-base: ui.js: use session data api to persist tab selection state
Jo-Philipp Wich [Wed, 15 Apr 2020 20:18:13 +0000 (22:18 +0200)]
luci-base: ui.js: use session data api to persist tab selection state

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 51186355ea168dfc6fb1363ace5c57b178f0331e)

4 years agoluci-base: ui.js: add disabled property to widgets
Jo-Philipp Wich [Mon, 13 Apr 2020 14:11:35 +0000 (16:11 +0200)]
luci-base: ui.js: add disabled property to widgets

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 86c797041af0b52c17aa10db977f039b28a9444a)

4 years agoluci-base: ui.js: add generic indicator handling functions
Jo-Philipp Wich [Tue, 31 Mar 2020 19:29:28 +0000 (21:29 +0200)]
luci-base: ui.js: add generic indicator handling functions

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 4250f99d7f061e47d24e18db26bf6dffc98cc72e)

4 years agoluci-base: ui.js: improve mobile dropdown scroll behaviour
Jo-Philipp Wich [Wed, 25 Mar 2020 11:34:46 +0000 (12:34 +0100)]
luci-base: ui.js: improve mobile dropdown scroll behaviour

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 0fb2f8f1d1d8748b56522cc81cf68d5aa04b9f50)

4 years agoluci-base: form.js / ui.js: tie form labels to widgets
Jo-Philipp Wich [Tue, 24 Mar 2020 20:57:21 +0000 (21:57 +0100)]
luci-base: form.js / ui.js: tie form labels to widgets

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 22ba6fc40933bee02c3ea93bbda952bb44bf3af1)
(cherry picked from commit 82fb5a67d39d965595d2ad833dbf930e559c0202)

4 years agoluci-base: ui.js: various tweaks
Jo-Philipp Wich [Mon, 23 Mar 2020 20:36:59 +0000 (21:36 +0100)]
luci-base: ui.js: various tweaks

 - 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>
(cherry picked from commit 993b4f79506c99357dc77eeaa74b0fd9149b1cf1)

4 years agoluci-base: luci.js: get rid of global `L` references in internal classes
Jo-Philipp Wich [Thu, 16 Apr 2020 11:17:57 +0000 (13:17 +0200)]
luci-base: luci.js: get rid of global `L` references in internal classes

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(backported from commit 616d2a61e40ff2c19f38804f08c5b9ccf156639f)

4 years agoluci-base: luci.js: share environment object among LuCI base classes
Jo-Philipp Wich [Thu, 16 Apr 2020 08:46:45 +0000 (10:46 +0200)]
luci-base: luci.js: share environment object among LuCI base classes

This allows us to get rid of global `L` references in luci.js itself.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit e385640505352efe8e470d5b723e8b467a0d6fb6)

4 years agoluci-base: ensure that ubus path uses trailing slash
Jo-Philipp Wich [Fri, 13 Mar 2020 22:57:19 +0000 (23:57 +0100)]
luci-base: ensure that ubus path uses trailing slash

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>
(cherry picked from commit 38289bc97512e758e5a20f348dc13d5018f98188)

4 years agoluci-base: make rpc webserver path configurable
Ansuel Smith [Thu, 16 Jan 2020 14:16:09 +0000 (15:16 +0100)]
luci-base: make rpc webserver path configurable

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>
(backported from commit 529bde44081d0bc07a064e9dfb1f0b3f35e61061)

4 years agoluci-base: luci.js: add LuCI.session.getToken()
Jo-Philipp Wich [Sun, 26 Apr 2020 16:44:48 +0000 (18:44 +0200)]
luci-base: luci.js: add LuCI.session.getToken()

Since we're already have LuCI.session.getID() we should mirror the same
interface for retrieving the session token.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 551d839f90853b58f81d124c77442009d4df0cb4)

4 years agoluci-base: luci.js: add hasViewPermission() helper
Jo-Philipp Wich [Wed, 15 Apr 2020 20:14:44 +0000 (22:14 +0200)]
luci-base: luci.js: add hasViewPermission() helper

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit b739fc17eabe9905889017127ac1de8f4e194819)

4 years agoluci-base: luci.js: fix JSdoc markup issues
Jo-Philipp Wich [Wed, 15 Apr 2020 20:03:20 +0000 (22:03 +0200)]
luci-base: luci.js: fix JSdoc markup issues

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 06af541c376ddab7303ea4294b17e8be91458d05)

4 years agoluci-base: luci.js: convert various probe* functions to session data api
Jo-Philipp Wich [Wed, 15 Apr 2020 20:01:55 +0000 (22:01 +0200)]
luci-base: luci.js: convert various probe* functions to session data api

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit b0c822192628f3346721810212b0770cc16ff6ea)

4 years agoluci-base: luci.js: add LuCI.session class
Jo-Philipp Wich [Wed, 15 Apr 2020 19:50:26 +0000 (21:50 +0200)]
luci-base: luci.js: add LuCI.session class

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit ef718246b17d322ae001129c04e117d17e2373a0)

4 years agoluci-base: luci.js: add ability to add "preload" classes
Jo-Philipp Wich [Sun, 12 Apr 2020 20:54:02 +0000 (22:54 +0200)]
luci-base: luci.js: add ability to add "preload" classes

Extend the LuCI bootstrap procedure to scan for class files in
/www/luci-static/preload/. Any JavaScript file found there will be
required automatically before setting up the view, allowing to stage
code that should run on every page load.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 0d0ad80fd1b96ff2c33392387320ad518640782b)

4 years agoluci-base: luci.js: add LuCI.fspath() helper
Jo-Philipp Wich [Sun, 12 Apr 2020 20:27:16 +0000 (22:27 +0200)]
luci-base: luci.js: add LuCI.fspath() helper

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>
(cherry picked from commit fde144c9be61d7886e81240233328a61d7088d08)

4 years agoluci-base: expose effective dispatched path to client side environment
Jo-Philipp Wich [Sun, 1 Dec 2019 19:21:04 +0000 (20:21 +0100)]
luci-base: expose effective dispatched path to client side environment

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(backported from commit 97f27e0d54fd1a1534b99421aa0e930fbe274db8)

4 years agoucitrack: fix bug for exec with params
jjm2473 [Sun, 22 Mar 2020 16:58:46 +0000 (00:58 +0800)]
ucitrack: fix bug for exec with params

In file `/etc/config/ucitrack`
```
config fstab
        option exec '/sbin/block mount'
```
`/sbin/block mount` never be called after fstab changed.

Signed-off-by: jjm2473 <1129525450@qq.com>
(cherry picked from commit 97780a9ce158097e17ed7842ae01e765d5da4955)

4 years agoluci-base: add system cert bundle detection
David Lam [Thu, 16 Jan 2020 09:15:40 +0000 (01:15 -0800)]
luci-base: add system cert bundle detection

Add detection mechanism for system cert CA bundle installed by the
ca-bundle package. Used by LuCI to detect whether the "Use system
certificates" certificate validation option should be enabled.

Signed-off-by: David Lam <david@thedavid.net>
(cherry picked from commit 27b21c2a6262a8c383c783e98320746f22fe8f6f)

4 years agoluci-base: dispatcher.lua: pass permission state to legacy CBI templates
Jo-Philipp Wich [Mon, 20 Apr 2020 07:33:30 +0000 (09:33 +0200)]
luci-base: dispatcher.lua: pass permission state to legacy CBI templates

Ref: https://github.com/openwrt/luci/issues/3937
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit c48a8d58132b4f175ec0a4b4ec4e15eb199edeb8)

4 years agoluci-base: dispatcher.lua: honour acl_depends annotations in Lua controllers
Jo-Philipp Wich [Sun, 19 Apr 2020 15:13:49 +0000 (17:13 +0200)]
luci-base: dispatcher.lua: honour acl_depends annotations in Lua controllers

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 760763a7b5da42860c6c2d63478859bb02fa9104)

4 years agoluci-base: dispatcher.lua: add support for handling menu ACL annotations
Jo-Philipp Wich [Wed, 15 Apr 2020 20:12:39 +0000 (22:12 +0200)]
luci-base: dispatcher.lua: add support for handling menu ACL annotations

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 125916f2f4603acf980acd074aca55d0b528f34b)

4 years agoluci-base: Add missed config parameter for cbi when converting to JSON
Anton Kikin [Tue, 18 Feb 2020 11:00:01 +0000 (14:00 +0300)]
luci-base: Add missed config parameter for cbi when converting to JSON

The cbi() function has a second argument 'config' in which various
configuration parameters can be passed. When converting the lua menu
to JSON, we must also convert this parameter.

Signed-off-by: Anton Kikin <a.kikin@tano-systems.com>
(cherry picked from commit 2d8299338e6c77fb15c457f5cf7f34dc0278db60)

4 years agoluci-base: dispatcher.lua: remove redundant check_fs_depends() call
Jo-Philipp Wich [Wed, 5 Feb 2020 16:42:58 +0000 (17:42 +0100)]
luci-base: dispatcher.lua: remove redundant check_fs_depends() call

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 08eea3f93e9f2e9a2940df2e3a7afbe04c40f4b6)

4 years agoluci-base: dispatcher.lua: fix filesystem dependency checks
Jo-Philipp Wich [Thu, 30 Jan 2020 11:19:27 +0000 (12:19 +0100)]
luci-base: dispatcher.lua: fix filesystem dependency checks

A variable clash led to declarative `fs` dependencies being ineffective.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 7cfce565530cbf6103275002ad20af57a509ad7b)

4 years agoluci-base: dispatcher: remove empty firstchild nodes from menu
Jo-Philipp Wich [Fri, 10 Jan 2020 21:12:03 +0000 (22:12 +0100)]
luci-base: dispatcher: remove empty firstchild nodes from menu

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit fd7961337f44ebe8aa71e6ae0925cb70a8c53b21)

4 years agoluci-base: dispatcher: fix rpc controller regression
Jo-Philipp Wich [Tue, 7 Jan 2020 08:08:49 +0000 (09:08 +0100)]
luci-base: dispatcher: fix rpc controller regression

When testing the luci-rpc authnetication, avoid clobbering the HTTP
post request body.

Fixes: #3470
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 38c9c9e0a2564b9644a56f1143f6acf0c9e272c8)

4 years agoluci-base: dispatcher.lua: add support for loading JSON menu files
Jo-Philipp Wich [Fri, 6 Dec 2019 20:19:02 +0000 (21:19 +0100)]
luci-base: dispatcher.lua: add support for loading JSON menu files

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit cf1219bd0790506279b14007595e8389e5eb99ff)

4 years agoluci-base: dispatcher.lua: refactor dispatch logic
Jo-Philipp Wich [Wed, 4 Dec 2019 18:19:45 +0000 (19:19 +0100)]
luci-base: dispatcher.lua: refactor dispatch logic

Refactor the dispatch logic to operate on the internal JSON representation
of the menu tree.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 184ea6230076bf4dd3abf6669bde17f87a051146)

4 years agoluci-base: dispatcher.lua: factor out template class init into own function
Jo-Philipp Wich [Wed, 4 Dec 2019 18:04:50 +0000 (19:04 +0100)]
luci-base: dispatcher.lua: factor out template class init into own function

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 1ec6e72106218e11871dd8ee563f7673c2d1f7dc)

4 years agoluci-base: dispatcher.lua: factor out language check into own function
Jo-Philipp Wich [Wed, 4 Dec 2019 18:00:27 +0000 (19:00 +0100)]
luci-base: dispatcher.lua: factor out language check into own function

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit a6b214f87332471b8210d05b02ae59ea6b0c16b7)

4 years agoluci-base: dispatcher.lua: introduce dispatch tree JSON conversion
Jo-Philipp Wich [Sun, 1 Dec 2019 19:06:43 +0000 (20:06 +0100)]
luci-base: dispatcher.lua: introduce dispatch tree JSON conversion

Introduce a new method menu_json() which converts the current dispatch
tree into JSON structure.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 852d24061d236048a8c2c886787eede2586b10b4)

4 years agoluci-mod-status: use LuCI.ui.instantiateView() to load index view
Jo-Philipp Wich [Fri, 3 Apr 2020 11:27:20 +0000 (13:27 +0200)]
luci-mod-status: use LuCI.ui.instantiateView() to load index view

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit f9d61213fbfde66ffc6f8ca0e112d6445c6c4695)

4 years agoluci-base: ui.js: add instantiateView() helper
Jo-Philipp Wich [Fri, 3 Apr 2020 11:21:09 +0000 (13:21 +0200)]
luci-base: ui.js: add instantiateView() helper

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit d9e9cf92d15c81284000c7c97c6f7bf2b5953c2d)

4 years agotreewide: import utility classes explicitly
Jo-Philipp Wich [Fri, 3 Apr 2020 08:00:06 +0000 (10:00 +0200)]
treewide: import utility classes explicitly

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(backported from commit 3c4bc228a1f7b5731cf464f3f407c9ed9ace3cd2)

4 years agoluci-base: harmonize JS class naming and requesting
Jo-Philipp Wich [Thu, 2 Apr 2020 19:40:50 +0000 (21:40 +0200)]
luci-base: harmonize JS class naming and requesting

 - Make builtin classes available via `require` to allow view code to
   request external and internal classes in a consistent manner without
   having to know which classes are builtin and which not

 - Make base classes request any used class explicitely instead of
   relying on implicitly set up L.{dom,view,Poll,Request,Class} aliases

 - Consistently convert class names to lower case in JSdoc to match
   the names used in `require` statements

 - Deprecate L.{dom,view,Poll,Request,Class} aliases

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(backported from commit 711f75927849fade74f79e4b198b3a839d9d4fbc)

4 years agoluci-base: Improve change application message
Kevin Darbyshire-Bryant [Thu, 14 Nov 2019 10:53:56 +0000 (10:53 +0000)]
luci-base: Improve change application message

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>
(cherry picked from commit 9b266d11c6b5082c733f101326160cef797f6edf)

4 years agoluci-base: ui.js: dispatch "cbi-tab-active" event when a tab is selected
Jo-Philipp Wich [Wed, 12 Feb 2020 07:14:22 +0000 (08:14 +0100)]
luci-base: ui.js: dispatch "cbi-tab-active" event when a tab is selected

This is useful to lazy-load tab contents.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit bf774e4c2a6a03aa01d4bcd9f5ce4f960cd91874)

4 years agoluci-base: ui.js: allow custom validation in Dropdown and DynamicList
Jo-Philipp Wich [Mon, 16 Dec 2019 16:44:27 +0000 (17:44 +0100)]
luci-base: ui.js: allow custom validation in Dropdown and DynamicList

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 90a161018c9c7650a27a66f8e0a4f060d1ccebd6)

4 years agoluci-base: ui.js: add documentation
Jo-Philipp Wich [Tue, 31 Mar 2020 19:27:42 +0000 (21:27 +0200)]
luci-base: ui.js: add documentation

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 1bb27177296cbfc4ad4a07dc59edf31fb8f92c7a)

4 years agoluci-app-statistics: remove quotemark from comment
Hannu Nyman [Thu, 7 May 2020 16:17:42 +0000 (19:17 +0300)]
luci-app-statistics: remove quotemark from comment

Having quote " in a comment may cause error with non-minified code.
(explanation: caused by 'require' function's parsing behaviour)

Remove also ";" just in case.

Reference to issue 4020

(backported from 4f80f9542)

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
4 years agoMerge pull request #4009 from stangri/19.07-luci-app-vpn-policy-routing
Stan [Mon, 4 May 2020 22:55:41 +0000 (15:55 -0700)]
Merge pull request #4009 from stangri/19.07-luci-app-vpn-policy-routing

[19.07] luci-app-vpn-policy-routing: support phys-dev policies

4 years agoluci-app-vpn-policy-routing: support phys-dev policies 4009/head
Stan Grishin [Mon, 4 May 2020 22:54:30 +0000 (22:54 +0000)]
luci-app-vpn-policy-routing: support phys-dev policies

Signed-off-by: Stan Grishin <stangri@melmac.net>
4 years agoluci-base: i18n - cleanup after backport
Hannu Nyman [Mon, 4 May 2020 20:03:11 +0000 (23:03 +0300)]
luci-base: i18n - cleanup after backport

The backport script apparently imported some stale strings.
Remove them.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
4 years agotreewide: i18n - backport translations from master
Hannu Nyman [Mon, 4 May 2020 19:47:26 +0000 (22:47 +0300)]
treewide: i18n - backport translations from master

Backport updates to translations from master by using
build/i18n-merge-master.pl

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
4 years agotreewide: sync translations
Hannu Nyman [Mon, 4 May 2020 19:32:44 +0000 (22:32 +0300)]
treewide: sync translations

Sync translations.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
4 years agoMerge pull request #4002 from stangri/19.07-luci-app-vpnbypass
Stan [Sun, 3 May 2020 19:49:24 +0000 (12:49 -0700)]
Merge pull request #4002 from stangri/19.07-luci-app-vpnbypass

[19.07] luci-app-vpnbypass: better localizeable resources

4 years agoluci-app-vpnbypass: better localizeable resources 4002/head
Stan Grishin [Sat, 2 May 2020 22:17:49 +0000 (22:17 +0000)]
luci-app-vpnbypass: better localizeable resources

Signed-off-by: Stan Grishin <stangri@melmac.net>
4 years agoMerge pull request #3998 from stangri/19.07-luci-app-simple-adblock
Stan [Sat, 2 May 2020 16:20:56 +0000 (09:20 -0700)]
Merge pull request #3998 from stangri/19.07-luci-app-simple-adblock

[19.07] luci-app-simple-adblock: bugfix: remove escaped double-quotes from translateable resources

4 years agoMerge pull request #3996 from stangri/19.07-luci-app-vpn-policy-routing
Stan [Sat, 2 May 2020 16:20:29 +0000 (09:20 -0700)]
Merge pull request #3996 from stangri/19.07-luci-app-vpn-policy-routing

[19.07] luci-app-vpn-policy-routing: bugfix: remove escaped double-quotes from translateable resources

4 years agoluci-app-simple-adblock: bugfix: remove escaped double-quotes from translateable... 3998/head
Stan Grishin [Sat, 2 May 2020 16:00:54 +0000 (16:00 +0000)]
luci-app-simple-adblock: bugfix: remove escaped double-quotes from translateable resources

Signed-off-by: Stan Grishin <stangri@melmac.net>
4 years agoMerge pull request #3992 from stangri/19.07-luci-app-https-dns-proxy
Hannu Nyman [Sat, 2 May 2020 15:55:56 +0000 (18:55 +0300)]
Merge pull request #3992 from stangri/19.07-luci-app-https-dns-proxy

[19.07] luci-app-https-dns-proxy: bugfix: remove escaped double-quotes from translateable resources

4 years agoluci-app-vpn-policy-routing: bugfix: remove escaped double-quotes from translateable... 3996/head
Stan Grishin [Sat, 2 May 2020 15:46:47 +0000 (15:46 +0000)]
luci-app-vpn-policy-routing: bugfix: remove escaped double-quotes from translateable resources

Signed-off-by: Stan Grishin <stangri@melmac.net>
4 years agoluci-app-https-dns-proxy: bugfix: remove escaped double-quotes from translateable... 3992/head
Stan Grishin [Sat, 2 May 2020 15:31:49 +0000 (15:31 +0000)]
luci-app-https-dns-proxy: bugfix: remove escaped double-quotes from translateable resources

Signed-off-by: Stan Grishin <stangri@melmac.net>
4 years agoMerge pull request #3960 from stangri/19.07-luci-app-https-dns-proxy
Hannu Nyman [Fri, 24 Apr 2020 14:32:11 +0000 (17:32 +0300)]
Merge pull request #3960 from stangri/19.07-luci-app-https-dns-proxy

[19.07] luci-app-https-dns-proxy: add CIRA Canadian Shiled

4 years agoluci-app-https-dns-proxy: add CIRA Canadian Shiled 3960/head
Stan Grishin [Fri, 24 Apr 2020 10:06:01 +0000 (10:06 +0000)]
luci-app-https-dns-proxy: add CIRA Canadian Shiled

Signed-off-by: Stan Grishin <stangri@melmac.net>
4 years agoluci-app-travelmate: refine logical interface selection
Dirk Brenken [Fri, 24 Apr 2020 07:42:02 +0000 (09:42 +0200)]
luci-app-travelmate: refine logical interface selection

Signed-off-by: Dirk Brenken <dev@brenken.org>
(cherry picked from commit c2d8275fdae8caf76cb54af553bcf880d2c6f157)

4 years agoluci-app-travelmate: sync with travelmate 1.5.4
Dirk Brenken [Wed, 22 Apr 2020 19:40:04 +0000 (21:40 +0200)]
luci-app-travelmate: sync with travelmate 1.5.4

* change wifi scanning to logical interface name,
  no longer use the radio device

Signed-off-by: Dirk Brenken <dev@brenken.org>
(cherry picked from commit 9d02ef1bd936e79d30370a243b42428675dce247)

4 years agoluci-proto-openconnect: fix certificate file paths
Friendly fellow [Thu, 26 Mar 2020 15:49:55 +0000 (18:49 +0300)]
luci-proto-openconnect: fix certificate file paths

This addresses the issue of openconnect.sh from openconnect package expecting
a vpn- suffix for the files, while the frontend didn't.

Signed-off-by: Friendly fellow <DasTestament@users.noreply.github.com>
[reword commit message]
Ref: https://github.com/openwrt/packages/issues/11584
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit adf0fb1879ffb6bd04984d257484fad0fba1d6a3)
Fixes: #3951

4 years agoMerge pull request #3944 from stangri/19.07-luci-app-simple-adblock
Hannu Nyman [Tue, 21 Apr 2020 16:48:23 +0000 (19:48 +0300)]
Merge pull request #3944 from stangri/19.07-luci-app-simple-adblock

[19.07] luci-app-simple-adblock: bugfix: get package version from opkg

4 years agoluci-app-simple-adblock: bugfix: get package version from opkg 3944/head
Stan Grishin [Tue, 21 Apr 2020 00:51:30 +0000 (00:51 +0000)]
luci-app-simple-adblock: bugfix: get package version from opkg

Signed-off-by: Stan Grishin <stangri@melmac.net>
4 years agoluci-app-adblock: accept capital letters in DNS filter
Dirk Brenken [Tue, 14 Apr 2020 17:44:58 +0000 (19:44 +0200)]
luci-app-adblock: accept capital letters in DNS filter

Signed-off-by: Dirk Brenken <dev@brenken.org>
(cherry picked from commit e7cb6efb5a2c147fb00b5dd97651099a60da9bd3)

4 years agoluci-app-adblock: more DNS Report tweaks
Dirk Brenken [Sun, 12 Apr 2020 08:00:34 +0000 (10:00 +0200)]
luci-app-adblock: more DNS Report tweaks

* revert last page loading change,
  this breaks the filter functionality on that page
* Add a short paragraph to explain the page functionality
* Fix search to accept ":" character as well
  (e.g. for IPv6 address search)

Signed-off-by: Dirk Brenken <dev@brenken.org>
(cherry picked from commit 94799995aa3fc7961c6d6aea6d3105a29d550b3f)

4 years agoluci-app-advanced-reboot: fix syntax
Hannu Nyman [Sun, 12 Apr 2020 05:57:38 +0000 (08:57 +0300)]
luci-app-advanced-reboot: fix syntax

Add the missing ")" to lines 45 and 54.
Fixes 75a4a80c1dd
Fixes #3903

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
(cherry picked from commit 2c812fbd58fd7399969185cc501bdba561d98d95)

4 years agoluci-app-adblock: refresh report data on page load
Dirk Brenken [Sat, 11 Apr 2020 18:35:06 +0000 (20:35 +0200)]
luci-app-adblock: refresh report data on page load

* refresh report data on page load (without hitting
  the refresh button explicity)

Signed-off-by: Dirk Brenken <dev@brenken.org>
(cherry picked from commit bfcd962ffd211521e91a875e60ef897335de1fc0)

4 years agoMerge pull request #3897 from stangri/19.07-luci-app-vpn-policy-routing
Hannu Nyman [Sat, 11 Apr 2020 12:40:26 +0000 (15:40 +0300)]
Merge pull request #3897 from stangri/19.07-luci-app-vpn-policy-routing

[19.07] luci-app-vpn-policy-routing: improve i18n

4 years agoMerge pull request #3899 from stangri/19.07-luci-app-simple-adblock
Hannu Nyman [Sat, 11 Apr 2020 12:39:37 +0000 (15:39 +0300)]
Merge pull request #3899 from stangri/19.07-luci-app-simple-adblock

[19.07] luci-app-simple-adblock: improve i18n

4 years agoluci-app-vpn-policy-routing: improve i18n 3897/head
Stan Grishin [Sat, 11 Apr 2020 11:42:23 +0000 (11:42 +0000)]
luci-app-vpn-policy-routing: improve i18n

Signed-off-by: Stan Grishin <stangri@melmac.net>
4 years agoluci-app-simple-adblock: improve i18n 3899/head
Stan Grishin [Sat, 11 Apr 2020 11:39:26 +0000 (11:39 +0000)]
luci-app-simple-adblock: improve i18n

Signed-off-by: Stan Grishin <stangri@melmac.net>
4 years agoMerge pull request #3878 from stangri/19.07-luci-app-advanced-reboot
Hannu Nyman [Sat, 11 Apr 2020 07:50:56 +0000 (10:50 +0300)]
Merge pull request #3878 from stangri/19.07-luci-app-advanced-reboot

[19.07] luci-app-advanced-reboot: improve localization by moving from translate to translatef

4 years agoMerge pull request #3890 from stangri/19.07-luci-app-https-dns-proxy
Hannu Nyman [Sat, 11 Apr 2020 07:49:47 +0000 (10:49 +0300)]
Merge pull request #3890 from stangri/19.07-luci-app-https-dns-proxy

[19.07] luci-app-https-dns-proxy: improve i18n

4 years agoluci-app-https-dns-proxy: improve i18n 3890/head
Stan Grishin [Sat, 11 Apr 2020 02:30:14 +0000 (02:30 +0000)]
luci-app-https-dns-proxy: improve i18n

Signed-off-by: Stan Grishin <stangri@melmac.net>
4 years agoluci-app-advanced-reboot: improve localization by moving from translate to translatef 3878/head
Stan Grishin [Sat, 11 Apr 2020 01:11:38 +0000 (01:11 +0000)]
luci-app-advanced-reboot: improve localization by moving from translate to translatef

Signed-off-by: Stan Grishin <stangri@melmac.net>
4 years agoMerge pull request #3856 from dibdot/adblock
Jo-Philipp Wich [Wed, 8 Apr 2020 07:20:04 +0000 (09:20 +0200)]
Merge pull request #3856 from dibdot/adblock

[19.07] luci-app-adblock: release 4.0.3

4 years ago[19.07] luci-app-adblock: release 4.0.3 3856/head
Dirk Brenken [Tue, 7 Apr 2020 20:37:51 +0000 (22:37 +0200)]
[19.07] luci-app-adblock: release 4.0.3

* sync with adblock 4.0.3 in 19.07 package branch

Signed-off-by: Dirk Brenken <dev@brenken.org>
4 years agoMerge pull request #3853 from stangri/19.07-luci-app-https-dns-proxy
Hannu Nyman [Tue, 7 Apr 2020 07:18:09 +0000 (10:18 +0300)]
Merge pull request #3853 from stangri/19.07-luci-app-https-dns-proxy

[19.07] luci-app-https-dns-proxy: Move help links to providers files, Add LibreDNS

4 years agoluci-app-https-dns-proxy: Move help links to providers files, Add LibreDNS. 3853/head
Stan Grishin [Mon, 6 Apr 2020 14:00:21 +0000 (14:00 +0000)]
luci-app-https-dns-proxy: Move help links to providers files, Add LibreDNS.

Signed-off-by: Stan Grishin <stangri@melmac.net>
4 years agoMerge pull request #3846 from joweisberg/openwrt-19.07
Hannu Nyman [Sun, 5 Apr 2020 18:11:28 +0000 (21:11 +0300)]
Merge pull request #3846 from joweisberg/openwrt-19.07

luci-app-samba: Fix path url link to mounts

4 years agoluci-app-samba: Fix path url link to mounts 3846/head
joweisberg [Sun, 5 Apr 2020 18:06:40 +0000 (20:06 +0200)]
luci-app-samba: Fix path url link to mounts

Signed-off-by: joweisberg <jo.weisberg@gmail.com>