Commit graph

555 commits

Author SHA1 Message Date
Martin Schiller
72fb7e39ef luci-base: fix german translations
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2018-09-27 09:24:45 +02:00
Luiz Angelo Daros de Luca
728501dd57 i18n: update pt-br translation
Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2018-09-20 21:58:33 -03:00
Yurii
00c7cfe95b
luci-base: update Ukrainian translation
luci-base: corrected and update Ukrainian translation with the latest resync.

Signed-off-by: Yurii yuripet@gmail.com
2018-09-20 03:45:22 +03:00
INAGAKI Hiroshi
f5c60bd716 luci-base: update Japanese translation
Updated Japanese translations.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-09-20 05:15:09 +09:00
Hannu Nyman
c5ce34193e i18n: sync translations
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-09-19 21:55:12 +03:00
Jo-Philipp Wich
0f91ef83af luci-base: switch admin category node to firstnode() action
After this change, luci-base will render the first module or application
page installed on the system, instead of rendering a "Component not found"
message when the status category is unavailable.

This allows for single-purpose LuCI installations like e.g. luci-base with
luci-app-travelmate which only presents application specific views without
any of the standard system pages.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-09-19 20:08:19 +02:00
Jo-Philipp Wich
11f7817d33 luci-base: dispatcher: introduce firstnode() dispatching target
The firstnode target will dispatch the request to the first eligible menu
subtree node that is not a redirect to another node, a special action or
post security enabled page.

That action is specifically useful for global category toplevel nodes like
"admin" which are supposed to simply direct access to the first installed
page node without having to hardcode specific choices.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-09-19 20:08:19 +02:00
Daniel F. Dickinson
58d97b5e27 modules: Split luci-mod-full
Move some common elements to luci-base, and otherwise make three
packages out of status, system, and network.  They were mostly
separated already, but there were some shared elements between
status and network that are now in luci-base.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-09-19 20:08:19 +02:00
Daniel F. Dickinson
6ec0353201 modules: Make luci-base sufficient to use luci apps
Per the discussion in https://github.com/openwrt/luci/issues/869, make
luci-base sufficient to login, logout, and review and apply or revert
uci changes.  This allows most luci-app-xxx to work without having
luci-mod-admin-full installed.

It has been tested with some apps and not luci-mod-admin-full, as well
as with luci-mod-admin-full (to make sure the usual case doesn't break).

Instead of creating a new module namespace (e.g. 'Base') we reduce the
opportunities for breakage by having luci-base take over the 'shell' of
the 'Administration' (admin/....) namespace.

Since admin is assumed by all current building LuCI components (including
Freifunk), this doesn't introduce the 'Administration' tab into any
situation where it would not already be present (but includes it where it
was before).

We also add a "Component not installed" page to avoid fatal errors and
backtrace when e.g. luci-mod-admin-full is not installed.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-09-19 20:08:19 +02:00
Jo-Philipp Wich
1a0316bbba
Merge pull request #2140 from kristrev/multiple-upstream-interfaces-status
luci-base: Show multiple upstream interface
2018-09-19 11:36:30 +02:00
Kristian Evensen
a13748d414 luci-base: Show multiple upstream interface
Several devices have multiple upstream interfaces, for example a fixed
and a mobile broadband connection. Currently, only one upstream
interface is shown per address family in Luci. So in my example, one of
the interfaces would not appear on the Status-page.

This PR introduces support for showing multiple upstream interfaces on
the Status-page. The code is not very complicated. get_status_by_route()
has been extended to return a list of all routes, and
get_wannet()/get_wan6net() now returns all upstream interfaces.

I could not find any other (active) users of these three functions than
calls triggered from the Status-page, so changing the default behavior
should be fine. get_wandev()/get_wan6dev() called get_status_by_route(),
but I could not find any place where those functions were called. I
removed the dev-functions instead of keeping the old
get_status_by_route().

On the status page, the wan/wan6-variables have been replaced with
arrays. When populating the html, we now iterate through these arrays
and create one element for each interface.

I have tested the code with different interface types, v4, v6, as well as
disconnecting and connecting interfaces. The status is updated and the
correct interfaces (or sometimes none at all) are shown.

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
2018-09-19 11:01:38 +02:00
Hannu Nyman
6bea6eebf0
Merge pull request #2122 from rosysong/backup
Backup: add firmware backup for mtdblock devices
2018-09-14 20:05:36 +03:00
Yusuf Soyipek
96c2b30960
luci-base: update Turkish translation
Add missing translations.

Signed-off-by: Yusuf Soyipek <yusuf@soyipek.com>
2018-09-13 23:17:57 +03:00
Martin Schiller
5f7c695848 i18n: sync translations
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2018-09-12 11:17:30 +02:00
Rosy Song
9840d310e2 modules: add backup module for mtdblock devices
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-09-08 15:07:01 +08:00
Anton Kikin
9b4bc1da41 luci-base: fix a typo in Russian translation
Signed-off-by: Anton Kikin <a.kikin@tano-systems.com>
2018-09-06 09:14:31 +08:00
Krystian Kozak
b16a257bd6 luci-base: update Polish translation
Updated Polish translations.

Signed-off-by: Krystian Kozak <krystian.kozak20@gmail.com>
2018-09-02 19:26:26 +02:00
Anton Kikin
961d02103f luci-base: update Russian translation
Add missing translations.

Signed-off-by: Anton Kikin <a.kikin@tano-systems.com>
2018-09-01 16:38:36 +03:00
Yurii
f10818b98a
luci-base: update Ukrainian translation
Updated with the latest sync translation.

Signed-off-by: Yurii yuripet@gmail.com
2018-09-01 00:16:40 +03:00
INAGAKI Hiroshi
6b4e30bd28 luci-base: update Japanese translation
Updated Japanese translations.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-09-01 03:30:34 +09:00
INAGAKI Hiroshi
7cafad8b31 i18n: sync translations
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-09-01 02:23:25 +09:00
Jo-Philipp Wich
8c77975d1b luci-base: remove fake password field from tab order
Set a negative tabindex on the dummy password field to not break the form
tab order flow.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-17 06:58:53 +02:00
Jo-Philipp Wich
98d4eb1695 luci-base: mark password template dummy field as hidden
Mark the dummy input field as aria-hidden, should fix #2063.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-16 09:36:37 +02:00
hcwhan
93cf4e2a27
Update base.po 2018-08-15 13:43:49 +08:00
Jo-Philipp Wich
849d153851 treewide: rework uci change display
- Use native rpcd uci changes format instead of incompletely converting
   back and forth between the old and the new format
 - Rework uci changelog template to print the equivalent uci commands
   for the various changes
 - Rework theme headers to properly count the uncomitted changes
 - Rework theme CSS to properly style new changelog

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-13 09:23:22 +02:00
Yurii
75bac85992
Update base.po: corrected translation errors
Signed-off-by: Yurii yuripet@gmail.com
2018-08-10 17:40:44 +03:00
Gregory L. Dietsche
abfe45ff61 Correct grammar in apply_widget.htm
This patch corrects "to get" to "to be" in apply_widget.htm
This shell command was used to find and make the change in
all impacted files:

find . -type f -exec sed -i 's/Waiting for configuration to get applied/Waiting for configuration to be applied/g' {} +

Signed-off-by: Gregory L. Dietsche <gregory.dietsche@cuw.edu>
2018-08-07 09:20:28 -05:00
yangfl
c51f0d9714 luci-base: update Chinese translation
Signed-off-by: David Yang <mmyangfl@gmail.com>
2018-08-07 15:39:41 +08:00
Krystian Kozak
10f12d7f6a luci-base: update Polish translation
Updated Polish translations.

Signed-off-by: Krystian Kozak <krystian.kozak20@gmail.com>
2018-08-05 14:38:57 +02:00
Hannu Nyman
26bbd01f37
Merge pull request #2001 from Rixerx/master
luci-base: update Polish translation
2018-07-30 23:09:01 +03:00
Jaymin Patel
bb336671ff fix compilation failure when luasrcdiet is being copied to non existing directory
Signed-off-by: Jaymin Patel <jem.patel@gmail.com>
2018-07-30 19:32:37 +05:30
Jo-Philipp Wich
63fbf5a805 luci-base: fix luasrcdiet
- Stage required libraries as well
 - Remove not existing make target
 - Override library search path

Fixes: b5d5e5bf1 ("luci-base: update luasrcdiet")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-28 14:21:51 +02:00
Jo-Philipp Wich
350be23eb9 luci-base: fix footer template
Move the apply widget markup before the final </html> tag to avoid XHTML
errors with the OpenWrt theme.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-28 14:21:36 +02:00
Krystian Kozak
6dbdc2cae8 luci-base: update Polish translation
Updated Polish translations.

Signed-off-by: Krystian Kozak <krystian.kozak20@gmail.com>
2018-07-27 23:10:49 +02:00
Jo-Philipp Wich
e5a1ac0228 treewide: rework rollback/apply workflow
Rework the apply confirmation mechanism to be session agnostic in order to
circumvent cross domain restrictions which prevent the JS code from issuing
apply confirm requests in some cases, e.g. when changing the LAN IP.

Confirmation calls may now be done from unauthenticated pages, as long as a
matching confirmation token is sent along with the request.

The reasoning behind this is that there is little security impact in
confirming pending apply sessions, especially since those sessions can only
be initiated while being authenticated.

After this change, LuCI will now launch a confirmation process on every
rendered page when a rollback is pending. The confirmation will happen
regardless of whether the user is logged in or not, or if the current page
is a CBI form or static template.

A confirmation request now also requires a random one-time token which is
rendered along with the confirmation JavaScript code in order to succeed.

This token is not meant to provide security but to ensure that the confirm
was triggered from an interactive browser session and not some background
HTTP requests that happened to end up in the admin ui.

As a consequence, the different apply/confirm/rollback code paths in CBI
maps and the UCI change/revert pages have been consolidated into one common
implementation residing in the common global theme agnostic footer template.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-27 14:07:23 +02:00
Jo-Philipp Wich
98217f8f8d luci-base: xhr.js: decode JSON for POST requests as well
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-27 14:07:23 +02:00
Jo-Philipp Wich
9ead1e29a6 luci-base: utils: support multiple return values in util.ubus()
This is needed to deal with ubus methods that return multiple results,
e.g. session/list

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-27 14:07:23 +02:00
Zheng Qian
33d3108d95 luci-base: zh_CN: Update Simplified Chinese translation
Signed-off-by: Zheng Qian <sotux82@gmail.com>
2018-07-25 11:24:41 +08:00
Jo-Philipp Wich
c27a77756c luci-base: strip superfluous space in additional field markup
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-23 15:10:55 +02:00
Jo-Philipp Wich
590d1cc74f luci-base: cbi.js: fade to-be-deleted section when hovering delete button
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-23 15:06:26 +02:00
Jo-Philipp Wich
875b561875 luci-base: cbi.js: use adjacent button dynlist add/remove buttons
Change the cbi.js code to create  a div based button element instead of an
image button.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-23 14:31:40 +02:00
Jo-Philipp Wich
b6dd0ecd6c luci-base: rework reveal/hide CBI password template button
Also add a hidden type password field to prevent browser autocompleters
from entering the login passwords into fields liek the wireless WPA key
field.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-23 14:30:03 +02:00
Jo-Philipp Wich
4105c78ff9 luci-mod-admin-full: unify "Alias interface" and "Alias Interface" strings
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-22 18:25:04 +02:00
Jo-Philipp Wich
e987c7e069
Merge pull request #1982 from Rixerx/master
luci-base: update Polish translation
2018-07-22 17:47:01 +02:00
Jo-Philipp Wich
8e0ee137a6 luci-base: add description annotations to tblsection cells
Add a "data-description" attribute to CBI fields which have a description
set, this allows responsive design themes to render a field description
when decomposing the table grid.

Also reuse the precalculated "typename" property if it exists, instead of
deriving it from the template name yet again.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-22 17:45:03 +02:00
Krystian Kozak
a900d61d91 luci-base: update Polish translation
Updated Polish translations.

Signed-off-by: Krystian Kozak <krystian.kozak20@gmail.com>
2018-07-21 21:56:50 +02:00
Anton Kikin
bf6275c85e luci-base: fix Russian translation
More correct translation of the 'instance'.

Signed-off-by: Anton Kikin <a.kikin@tano-systems.com>
2018-07-21 11:12:17 +03:00
Yurii
4fa9115de6
luci-base: update Ukrainian translation
Updated with the latest resync translation, corrections and additions.

Signed-off-by: Yurii yuripet@gmail.com
2018-07-20 21:31:54 +03:00
Jo-Philipp Wich
3c90289e0f luci-base: fix bad CSS class names in table section template
The previous refactoring of the template caused the row stripying CSS
classes to be interpolated in such a way, that a separating space to
previous CSS classes was missing, leading to not rendered row names
and other side effects.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-20 11:35:09 +02:00
INAGAKI Hiroshi
72517887cb luci-base: update Japanese translation
Updated Japanese translations.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-07-20 15:33:19 +09:00