Commit graph

10352 commits

Author SHA1 Message Date
Jo-Philipp Wich
a1fff6a9ee luci-base: xhr.js: rework class, handle expired session
Drop very old IE compat code, restructure class, align code style with
other files and properly handle JSON mimetypes with charset trailer.

Also detect session related 403 errors and show a modal prompting
to re-login.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-16 21:11:34 +01:00
Jo-Philipp Wich
425a02734e luci-base: dispatcher: add login indication on 403 errors
Send a custom LuCI X-Header to indicate that a login is required to access
the requested resource. This is mainly intended for xhr.js to be able to
intercept such responses and popup an authentication dialog.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-16 21:11:34 +01:00
Jo-Philipp Wich
5dddb105d2 luci-theme-bootstrap: remove redundant rules
Drop rules specific to the old status page progress bars and rework the
cbi element rules to work independently of a parent form tag.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-16 21:11:34 +01:00
Dirk Brenken
bef7d98bd6 luci-app-banip: sync with update 0.0.6
* add a manual interface selection to support
  multiple WAN interfaces in iptables rules

Signed-off-by: Dirk Brenken <dev@brenken.org>
2018-11-16 21:09:14 +01:00
Yurii
827c83f7ae
luci-base: update Ukrainian translation
Signed-off-by: Yurii yuripet@gmail.com
2018-11-16 21:59:41 +02:00
Hannu Nyman
ee6e07217c
Merge pull request #2296 from tano-systems/luci-base-upd-rus-i18n
luci-base: update Russian translation
2018-11-16 18:57:15 +02:00
Anton Kikin
c098c2345c luci-base: update Russian translation
Signed-off-by: Anton Kikin <a.kikin@tano-systems.com>
2018-11-16 19:50:46 +03:00
Hannu Nyman
68894e22d3
Merge pull request #2293 from musashino205/l10n/opkg-upd-ja
luci-app-opkg: update Japanese translation
2018-11-16 18:27:50 +02:00
Jo-Philipp Wich
36f79a042d
Merge pull request #2295 from musashino205/l10n/base-upd-ja
luci-base: update Japanese translation
2018-11-16 15:17:25 +01:00
INAGAKI Hiroshi
2d1c0301f8 luci-base: update Japanese translation
Updated Japanese translations.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-11-16 23:09:24 +09:00
INAGAKI Hiroshi
262691d9ac luci-app-opkg: update Japanese translation
Updated Japanese translations.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-11-16 19:59:41 +09:00
Dirk Brenken
49f23b5798
Merge pull request #2292 from dibdot/banip
luci-app-banip: adapt latest css changes
2018-11-16 09:07:11 +01:00
Dirk Brenken
8c68756e00
Merge pull request #2291 from dibdot/adblock
luci-app-adblock: adapt latest css changes
2018-11-16 09:06:54 +01:00
Dirk Brenken
3fe18fb278
Merge pull request #2290 from dibdot/travelmate
luci-app-travelmate: adapt latest css changes
2018-11-16 09:06:38 +01:00
Dirk Brenken
c9fab9e90c luci-app-travelmate: adapt latest css changes
Signed-off-by: Dirk Brenken <dev@brenken.org>
2018-11-16 09:03:41 +01:00
Dirk Brenken
5dd93edefa luci-app-adblock: adapt latest css changes
Signed-off-by: Dirk Brenken <dev@brenken.org>
2018-11-16 08:56:32 +01:00
Dirk Brenken
2aafeff4df luci-app-banip: adapt latest css changes
Signed-off-by: Dirk Brenken <dev@brenken.org>
2018-11-16 08:55:46 +01:00
Jo-Philipp Wich
e69d05cac4 luci-theme-openwrt: modal display fixes
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-15 23:00:34 +01:00
Angus Ding
fdb7f3ed13 luci-base: rename "Design" to "Theme" in translation files
Signed-off-by: Angus Ding <angus.ding@gmail.com>
[squash commits, reword commit message, rebase, msgmerge]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-15 19:33:09 +01:00
Angus Ding
94ebc49a4c luci-mod-system: rename "Design" to "Theme"
This provides a more accurate description for the theme selection.

Signed-off-by: Angus Ding <angus.ding@gmail.com>
[reword commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-15 19:33:09 +01:00
Jo-Philipp Wich
76bf2ac6ce treewide: resync translation files
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-15 19:32:53 +01:00
Darius
7bffa401ff luci-mod-network: function name mismatch fixed
Signed-off-by: Darius <jok.darius@gmail.com>
2018-11-15 08:41:59 +01:00
Matthias84
30e9f671a0 luci-app-vpnbypass: add german translation
Submitted-by: Matthias Meißer <Matthias84@users.noreply.github.com>
[slightly reword subject]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-15 08:35:28 +01:00
Matthias84
096caef874 luci-app-wireguard: add german translation
Submitted-by: Matthias84 <Matthias84@users.noreply.github.com>
[reword commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-15 08:33:14 +01:00
Wang805447391
09ac96ede9 luci-base: support disconnecting (deauthenticating) wireless clients
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-15 08:28:45 +01:00
alphakk
8aeb78d1c1 luci-app-https_dns_proxy: fix datatype of subnet address option
The datatype ip4prefix only accept numbers from 0 to 32, not subnet/mask
(i.e. 192.168.1.0/24), this affects option "-e".

https://github.com/openwrt/luci/wiki/Datatypes#ip4prefix the description
is wrong, according to src
http://luci.subsignal.org/trac/browser/luci/branches/luci-0.10/libs/web/luasrc/cbi/datatypes.lua#L76

Submitted-by: alphakk <kkspaces@mail.com>
[slightly reword commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-15 07:45:49 +01:00
Whitronic
f4212285d4 luci-proto-vpnc: expose defaultroute option in proto_vpnc.lua
Sometimes people only want the VPN connection to be a route to a specific
network, not the default gateway for all traffic.

I've tested this on my router and works fine!

Submitted-by: Whitronic <joao.f.vieira@gmail.com>
[reword commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-15 07:44:06 +01:00
Jo-Philipp Wich
a57ba0083e
Merge pull request #2286 from kevinoid/fix_statistics_filename_quoting
luci-app-statistics: quote : in filenames for DEF
2018-11-15 07:14:06 +01:00
Kevin Locke
1bbc419e7a luci-app-statistics: quote : in filenames for DEF
: is used to delimit fields in DEF: rrd instructions, so when it appears
in a filename it must be escaped using \.[1]  This commit adds the
escaping.

I discovered the issue after configuring collectd-mod-ping to monitor an
IPv6 host (2001:19f0:5:727:5b56:205d:ff55:2208).  Accessing
https://192.168.0.1/cgi-bin/luci/admin/statistics/graph/ping would cause
the following messages to be logged:

    Wed Nov 14 23:04:33 2018 daemon.err uhttpd[30261]: ERROR: can't parse DEF '2ping_avg_raw=/tmp/rrd/openwrthost/ping/ping-2001:19f0:5:727:5b56:205d:ff55:2208.rrd:value:AVERAGE' -2
    Wed Nov 14 23:04:33 2018 daemon.err uhttpd[30261]: ERROR: can't parse DEF '2ping_droprate_avg_raw=/tmp/rrd/openwrthost/ping/ping_droprate-2001:19f0:5:727:5b56:205d:ff55:2208.rrd:value:AVERAGE' -2

and the graphs would not display.  After applying this commit, the
graphs display correctly and no messages are logged.

1.  https://oss.oetiker.ch/rrdtool/doc/rrdgraph_data.en.html#IDEF

Signed-off-by: Kevin Locke <kevin@kevinlocke.name>
2018-11-14 16:55:24 -07:00
Jo-Philipp Wich
6bc04b6afb luci-base: fix some long standing german mistranslations
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 21:03:40 +01:00
Jo-Philipp Wich
f1efd71ba0 luci-mod-network: require unique MACs for DHCP leases
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 20:59:26 +01:00
Jo-Philipp Wich
7e26fa89e9 luci-base: datatypes: add "unique" dummy validator
Add a dummy validator for the server side so that we can start using unique
in client side JS code.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 20:58:49 +01:00
Jo-Philipp Wich
ceb342dc8d
Merge pull request #2259 from pmelange/luci-app-olsr-new-json-lib
update luci-app-olsr to the new jsoninfo library
2018-11-14 20:50:03 +01:00
Jo-Philipp Wich
e442bfe0ae
Merge pull request #2282 from TDT-AG/pr/20181114-luci-base
luci-base: allow optional default value for file browser
2018-11-14 20:48:15 +01:00
Jo-Philipp Wich
4bbe32548c luci-lib-ipkg: move out of luci-base
Move the old luci.model.ipkg utility class into a separate package and
let the components using it depend on the new library package.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 20:46:04 +01:00
Jo-Philipp Wich
391e82d6a3 luci-mod-system: replace builtin opkg support with luci-app-opkg
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 20:46:04 +01:00
Jo-Philipp Wich
ff7bcda5bc luci-mod-system: use luci.sys.process.exec() in system controller
Switch the system controller to the common luci.sys.process.exec() function
and drop the local ltn12_popen() and fork_exec() helpers.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 20:46:04 +01:00
Jo-Philipp Wich
6f7736c436 luci-mod-system: prevent comment injection in mtdbackup endpoint
Rework the parameter handling to both prevent a crash when no parameter is
given and to prevent root command injection through the mtd index part of
the parameter value.

Fixes: 9840d310e ("modules: add backup module for mtdblock devices")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 20:46:04 +01:00
Jo-Philipp Wich
aa2e0e2488 applications: add luci-app-opkg
Add a new luci-app-opkg which is a feature-complete replacement for the
builtin opkg functionality of luci-mod-system using mostly client side
JavaScript to reduce the amount of server side processing.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 20:46:04 +01:00
Jo-Philipp Wich
520a6add52 luci-app-firewall: remove references to cbi_bind()
Use the standard addEventListener() instead. Also remove an old
cbi_validate_field() call referencing a not existing field.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 20:46:04 +01:00
Jo-Philipp Wich
1dcdbb54ac luci-mod-status: use progressbar widgets on main status page
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 20:46:04 +01:00
Jo-Philipp Wich
94d8c9a7aa luci-base: simplify apply widget code
- 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-14 20:46:04 +01:00
Jo-Philipp Wich
333b7e57d3 luci-base: cbi.js: add modal dialog functions
Add two new functions showModal() and hideModal() which will fade in and
close an open modal respectively.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 20:46:04 +01:00
Jo-Philipp Wich
1c84826242 luci-theme-bootstrap: add modal/progressbar rules, cleanup
- Add rules for modal dialogs and progress bar widgets
 - Drop redundant, unused or obsolete rules
 - Add spin utility class

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 20:46:04 +01:00
Jo-Philipp Wich
cbd0d7c5de luci-theme-openwrt: modal/progressbar rules, mobile improvements
- Add rules for modal dialogs and progress bar widgets
 - Increase button and input size on mobile devices
 - Convert pt to px units
 - Add label and h5 styles
 - Add common flash and spin utility classes

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 20:46:04 +01:00
Jo-Philipp Wich
6469b65354 luci-base: add luci.sys.process.exec()
The new process.exec() function simplifies spawning external processes
and capturing their stdio.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 20:46:04 +01:00
Jo-Philipp Wich
cf36215228 applications: drop luci-app-asterisk
This application was never useful to begin with, drop it to avoid
further confusion.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 20:46:04 +01:00
Jo-Philipp Wich
4791180eb3 luci-base, themes: dropdown behaviour improvements
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 20:46:04 +01:00
Jo-Philipp Wich
e35fb36ea5 luci-base: cbi.js: remove dead code in cbi_validate_field()
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 20:46:04 +01:00
Jo-Philipp Wich
56249c867e luci-base: cbi.js: enable validation for dropdown fields
Directly attach validation handlers to cbi dropdowns as well, this allows
validating dropdown choices made by the user, similar to how plain select
boxes are handled by the cbi JavaScript.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-14 20:46:04 +01:00