Commit graph

80 commits

Author SHA1 Message Date
Jo-Philipp Wich
bbf096c79e luci-mod-admin-full: cleanup markup
Globally cleanup template markup to support responsive design changes in
OpenWrt theme.

Rework handling of dynamic status tables, consolidate hand-written markup,
fix small render bugs in various places and annotate tables where needed.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-23 18:01:39 +02:00
Jo-Philipp Wich
e7866c7dcc luci-mod-admin-full: add suggested italian translations
Merge two italian translations suggested in #1870 and add back two missing
dots accidentially removed from the translations in a previous commit.

Fixes: 588c8618b ("luci-mod-admin-full: fix translation interpolation in JS confirm() calls")
Suggested-by: Ansuel Smith <ansuelsmth@gmail.com>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-08 16:05:48 +02:00
Jo-Philipp Wich
588c8618b6 luci-mod-admin-full: fix translation interpolation in JS confirm() calls
Use luci.http.write_json() in conjunction with translate() to write out
unescaped translation strings in a manner suitable for interpolation inside
JavaScript.

Fixes #1870
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-08 15:48:26 +02:00
Jo-Philipp Wich
0e0ee2fed5 luci-mod-admin-full: git rid of embedded newlines in translation strings
Also switch one usage of raw '<%_ ... %>' interpolation to '<%: ... %>' in
order to avoid issues with translations using apostrophes.

Globally resnyc translations after the fix.

Fixes #1866.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-08 13:50:14 +02:00
Jo-Philipp Wich
724cc29978 luci-mod-admin-full: use common alert message markup
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-31 19:00:56 +02:00
Jo-Philipp Wich
7bd1bcaf30 luci-mod-admin-full: fix status page render glitch on Chrome
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-31 07:38:40 +02:00
Jo-Philipp Wich
0d2ae8d653 luci-mod-admin-full: rework network and wifi status displays
Use a more compact flex layout instead of the tabular display.
Also rename "WAN status" to "Upstream" to avoid future confusion about
wan interfaces vs. defaultroute interfaces.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-30 14:59:24 +02:00
Ansuel Smith
f0094cc06e luci-mod-admin-full: fix revert page
This fix the strange redirect link, a bug with uwsgi where the controller
is empty and a bug with the revert page showing the apply content empty.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
[drop unrelated revert.html template change]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-30 14:59:24 +02:00
Ansuel Smith
b8f32b6da7
luci-admin-full: add architecture info
Referring to this, #1698 , we add architecture info and we show Unknown instead of ?. This is usefull if someone needs to install opkg packages manually.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2018-05-28 15:38:57 +02:00
Jo-Philipp Wich
067d7dc9f7 treewide: convert HTML tables to div
Mostly convert HTML tables to div based markup to allow for easier styling
in the future. Also change JS accessor code accordingly.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-28 15:18:45 +02:00
Jo-Philipp Wich
fd1ddcc419 luci-mod-admin-full: rework wifi configuration
- localize variables
- get rid of redirects breaking apply workflow
- auto-adjust unusable channels when switching country
- use apply/rollback workflow when enabling/disabling networks

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-05 23:11:23 +02:00
Jo-Philipp Wich
8deb949551 treewide: rework uci apply workflow
Switch to rpcd based uci apply/rollback workflow which helps to avoid soft-
bricking devices by requiring an explicit confirmation call after config
apply.

When a user now clicks "Save & Apply", LuCI first issues a call to uci apply
which commits and reloads configuration, then goes into a polling countdown
mode where it repeatedly attempts to call uci confirm.

If the committed configuration is sane, the confirm call will go through and
cancel rpcd's pending rollback timer.

If the configuration change leads to a loss of connectivity (e.g. due to bad
firewall rules or similar), the rollback mechanism will kick in after the
timeout and revert configuration files and pending changes to the pre-apply
state.

In order to cover such rare cases where a lost of connectivity is expected
and desired, the user is offered an "unchecked" apply option after timing
out, which allows committing and applying the changes anyway, without the
extra safety checks.

As a consequence of this change, the luci-reload mechanism is now completely
unsused since rpcd uses ubus config reload signals to reload affected
services, which means that only procd-enabled services will receive proper
reload treatment with the new workflow.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-05 23:11:23 +02:00
Jo-Philipp Wich
bfc98bec4d luci-mod-admin-full: escape display parameter
Prevent reflected XSS through the reset button by url encoding the
display parameter.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-05 23:03:01 +02:00
Jo-Philipp Wich
731ed77c0b treewide: improve handling of page redirections in uci change views
Instead of passing the full LuCI request url, pass the relative resolved
request path instead and filter the received value through the lookup()
dispatcher function to only allow paths to actual internal pages.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-05 23:03:01 +02:00
Jo-Philipp Wich
005f4fb7d4
Merge pull request #1654 from TDT-AG/pr/20180301-luci-several-fixes
luci-app-firewall/luci-base/luci-mod-admin-full: some fixes and improvements
2018-03-15 09:52:22 +01:00
Jo-Philipp Wich
28e3b32854 treewide: unify mac address handling
Use the new luci.ip MAC address facilities to parse and verify MAC addresses
in a common way, instead of relying on various ad-hoc solutions.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-03-12 16:12:18 +01:00
Florian Eckert
10fbf9b2e4 luci-mod-admin-full: add hint on backup restore
Add a hint to backup restore that files could remain on the system.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-03-01 12:33:43 +01:00
Jo-Philipp Wich
e6cfe35baf luci-mod-admin-full: prevent unknown sysctl key warnings on status page
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-02-04 19:20:32 +01:00
Arjen de Korte
96f6a79eb2 luci-mod-admin-full: fix incorrect length of DUID-LL
The length of DUID-LL is 80 bits (16 bit DUID type, 16 bit hardware type, 48 bit mac)
which corresponds to 20 nibbles. Also lower the minimum required length of DUID to
20 nibbles in order to allow entering a DUID-LL.

Signed-off-by: Arjen de Korte <build+github@de-korte.org>
2018-01-09 08:08:55 +01:00
Jo-Philipp Wich
a41215581d
Merge pull request #1452 from mkresin/master
fix DHCPv6 hostname display
2017-12-07 14:03:54 +01:00
Brian J. Murrell
2c2e7f5cbb
Fix bad argument #1 to 'tonumber'
Fixes [FS#1118](https://bugs.lede-project.org/index.php?do=details&task_id=1118)

Luci chokes on devices that do not have _iptables_ installed with:

/usr/lib/lua/luci/dispatcher.lua:460: Failed to execute function dispatcher target for entry '/'.
The called action terminated with an exception:
/usr/lib/lua/luci/dispatcher.lua:460: Failed to execute firstchild dispatcher target for entry '/admin'.
The called action terminated with an exception:
/usr/lib/lua/luci/dispatcher.lua:460: Failed to execute function dispatcher target for entry '/admin/status'.
The called action terminated with an exception:
/usr/lib/lua/luci/dispatcher.lua:460: Failed to execute template dispatcher target for entry '/admin/status/overview'.
The called action terminated with an exception:
/usr/lib/lua/luci/template.lua:97: Failed to execute template 'admin_status/index'.
A runtime error occured: [string "/usr/lib/lua/luci/view/admin_status/index.h..."]:34: bad argument #1 to 'tonumber' (string expected, got nil)
stack traceback:
	[C]: in function 'assert'
	/usr/lib/lua/luci/dispatcher.lua:460: in function 'dispatch'
	/usr/lib/lua/luci/dispatcher.lua:141: in function </usr/lib/lua/luci/dispatcher.lua:140>

The code should be more defensive.
2017-12-04 08:44:00 -05:00
Mathias Kresin
0a2c7b9e5c luci-mod-admin-full: indicate DHCPv6 hostname mismatch
In case the DUID can be mapped to the MAC-Address of an already known
host, show the already know hostname next to the DHCPv6 supplied one in
case they differ.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-11-17 01:37:21 +01:00
Mathias Kresin
9f5a1de8b1 luci-mod-admin-full: always indicate missing DHCPv6 hostname
Don't show a DHCPv6 supplied hostname if none was send. It happens in
case the DUID can be mapped to the MAC-Address of an existing host and
the existing host has a name set.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-11-17 01:37:19 +01:00
Mathias Kresin
a1ee8e16b6 luci-mod-admin-full: don't replace DHCPv6 hostname
Don't replace the DHCPv6 supplied hostname if the DUID can be mapped to
the MAC-Address of an already known host.

It hides the issue of a missing DHCPv6 hostname and could lead to the
conclution that the already known host has an IPv6 address.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-11-17 01:27:18 +01:00
psyborg55
549949ad8b add fontsize style parameter
add fontsize style parameter to reduce output text size

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
2017-09-13 19:49:40 +02:00
psyborg55
bac20bc648 add fontsize style parameter
add fontsize style parameter to reduce output text size

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
2017-09-13 19:47:47 +02:00
Jo-Philipp Wich
7ae244a26e luci-mod-admin-full: use nf_conntrack_count for counting connections (#1114)
As suggested by PR #1114, use `/proc/sys/net/netfilter/nf_conntrack_count`
instead of counting the lines in `/proc/net/nf_conntrack` but use a slightly
more efficient approach which avoids spawning an extra `cat` command.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-04-20 16:55:29 +02:00
Hannu Nyman
3c988cf16c treewide: cleanup references to madwifi from LuCI
Remove the code related to the deprecated madwifi driver.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2017-02-28 18:55:11 +02:00
Eric Luehrsen
52771816a0 luci: ignore '::1' in realtime connections
luci ignores only 127.0.0.1 in real time connections.
The dnsmasq.init script sets up resolv.conf(s) as such.
With alternate DNS servers configured 'localhost' will
resolve to '127.0.0.1' or '::1'. The connections graph
will spam itself. openwrt/luci#996

Signed-off-by: Eric Luehrsen <ericluehrsen@hotmail.com>
2017-02-10 21:38:25 -05:00
Cody R. Brown
5377d22b4a mod-admin-full: Add IPv6 Prefix Delegation information to Status Pages
The Overview page and Network>Interfaces page currently do not give much information about IPv6, particularly with Prefix Delegated setups. In these setups, ISP will delegate a prefix to the router. Currently LuCI doesn't display this Prefix Delegation from the ISP anywhere. A number of changes was added to this commit:

1) self:_ubus("ipv6-prefix") was extracted and put into protocol.ip6prefix.
2) Network>Interfaces page, if a .ip6prefix is present, show it under Status. (IPv6-PD).
3) On the Overview page, "Type" and "Prefix Delegated" has been added to the IPv6 Network Overview Status:
  - Type will display the .proto, similar to the IPv4 case. If a .ip6prefix is present, it'll display a "-pd" at the end of the Type: i.e. dhcpv6-pd vs. dhcpv6.
  - If no .ip6prefix is present, it'll do what it does currently, and just show Address, or :: if no address is present.
  - If .ip6prefix is present, it'll show the "Prefix Delegated", it'll also hide "Address" if no address is present, else it'll show ifc6.ip6addr as well.

Signed-off-by: Cody R. Brown <dev@codybrown.ca>
2017-01-28 01:38:06 -08:00
Hannu Nyman
73749fa048 luci-mod-admin-{full,mini}: make more distro agnostic
Remove some non-essential references to explicit distro names.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-12-10 14:12:37 +02:00
Jo-Philipp Wich
70bad4da4f luci-mod-admin-full: handle infinite lease times in output
When a lease objects expires property is set to "false", its expiry time is
unlimited, so adjust the templates to properly display that state.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-12-09 13:07:42 +01:00
Hannu Nyman
107b3c7def luci-mod-admin-full: tweak checksum item presentation
Simplify the sysupgrade image checksum strings in order to
avoid translating "Checksum xxx" items both for MD5 and SHA256.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-08-24 11:46:20 +03:00
Hannu Nyman
c0af3601fb luci-mod-admin-full: show also sha256 checksum for sysupgrade images
Show also the sha256 checksum in addition to MD5 checksum to enable
image verification also for builds with only sha256 checksums.

If the 'sha256sum' command is not present in the system, the value
remains empty.

Note: The easiest way to get the 'sha256sum' command is to compile it
into busybox.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-08-19 11:08:24 +03:00
Jo-Philipp Wich
19981732fc luci-mod-admin-full: properly skip over unused switch ports
Fix incomplete port status display on vlan setup page when ports in the middle
are not used, e.g. some Lantiq boards use ports 0, 1, 2 and 4 for LAN ports so
JS code should not attempt to reference an undefined status element for port 3.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-08-18 10:02:53 +02:00
Jo-Philipp Wich
3ea9c85ed6 luci-mod-admin-full: use switch toplogy information for vlan setup
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-08-15 17:57:06 +02:00
Jo-Philipp Wich
bd4534496a luci-mod-admin-full: status page formatting fix
Display a question mark for undefined SSID and BSSID strings.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-08-04 11:45:30 +02:00
Jo-Philipp Wich
1367f7b624 luci-mod-admin-full: fix net diagnostics with missing config
Gracefully handle a missing diag section in /etc/config/luci when rendering
the network diagnostics tool page.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-07-31 16:00:09 +02:00
Florian Eckert
8b07a65117 luci-mod-admin-full: make diagnostics url customizable
Signed-off-by: Florian Eckert <Eckert.Florian@googlemail.com>
2016-07-29 08:21:23 +02:00
Enrique Giraldo
5e1f2a1b58 Closes #741: Can't delete disabled wireless networks
When a wireless network is disabled it can't be removed. From
wifi_overview.htm the delete call is generated as wlan0, wlan1 or
whatever. This wlan is not working because it is disabled, then LuCI
deletes the virtual radio which really is named as wlan0.
2016-06-16 15:08:36 +02:00
Luca Debernardi
0490374445 luci-mod-admin-full: fix wrong dsl stats visualization
This patch fixes the wrong visualization of Noise Margin (SNR) and Signal Attenuation (SATN) stats

Signed-off-by: Luca Debernardi <luca.debernardi@gmail.com>
2016-04-18 21:21:59 +02:00
Hannu Nyman
a77ff30057 Add support for showing ipv6 NAT table in Luci
When kmod-nf-nat6 and kmod-ipt-nat6 are installed, the firewall has also
the 'nat' table for ipv6, and packages like 'adblock' utilize that table.

Currently that table is not shown on the Luci firewall status page,
although it is visible by 'ip6tables -L -v -t nat' from console.

Detect 'nat' table's presence from /proc/net/ip6_tables_names

Show 'nat' table in Status->Firewall->IPv6 if that table is present.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-03-16 15:50:00 +02:00
Hauke Mehrtens
bedac198e5 luci-mod-admin-full: extend dsl stats
This adds a lot of new status information about the dsl line.
It now looks like this on a Telekom line:

Status: UP
Line State: showtime_tc_sync [0x801]
Line Mode: G.993.2 (VDSL2)
Annex: B
Profile: 17a
Data Rate: 51.391 Mb/s / 10.046 Mb/s
Max. Attainable Data Rate (ATTNDR): 63.817 Mb/s / 23.908 Mb/s
Latency: 4.0 ms / 8.0 ms
Line Attenuation (LATN): 10.5 dB / 9.9 dB
Signal Attenuation (SATN): 8.2 dB / 14.4 dB
Noise Margin (SNR): 10.5 dB / 9.7 dB
Aggregate Transmit Power(ACTATP): -14 dB / 12.4 dB
Forward Error Correction Seconds (FECS): 1 / 1723485
Errored seconds (ES): 0 / 2477
Severely Errored Seconds (SES): 0 / 50
Loss of Signal Seconds (LOSS): 0 / 0
Unavailable Seconds (UAS): 31 / 31
Header Error Code Errors (HEC): 0 / 0
Non Pre-emtive CRC errors (CRC_P): 0 / 0
Pre-emtive CRC errors (CRCP_P): 0 / 0
Line Uptime: 2m 3s
ATU-C System Vendor ID: Broadcom 176.15
Power Management Mode: L0 - Synchronized

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2016-03-07 20:59:01 +01:00
Hauke Mehrtens
d7a3a3da5c luci-mod-admin-full: rename ADSL to DSL
This could also be a VDSL link

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2016-03-07 20:58:54 +01:00
Jo-Philipp Wich
4990ec831c luci-mod-admin-full: fix direct package install
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-10 13:42:56 +01:00
Jo-Philipp Wich
445ae20db8 luci-mod-admin-full: only offer VHT rates which are actually supported by the driver
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-01-25 18:16:37 +01:00
Jo-Philipp Wich
02a93bca50 luci-mod-admin-full: map DHCPv6 DUIDs to MACs
Map DUIDs to their corresponding MAC addresses in order to correlate them with
IPv4 information. This is useful to e.g. identify IPv6 hosts which do not send
a name.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-01-25 17:54:44 +01:00
Jo-Philipp Wich
4f47a18bb1 luci-mod-admin-full: fix displaying of VHT rates (#533)
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-01-25 17:07:40 +01:00
Jo-Philipp Wich
63d70daae1 luci-mod-admin-full: align assoclist in wifi overview with status index page
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-01-20 17:29:40 +01:00
Jo-Philipp Wich
258836441b luci-mod-admin-full: show more information in assoc list (#540)
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-01-20 16:59:31 +01:00