Using xgettext has a few benefits compared to the previous perl extraction
approach. The xgettext utility is able to properly distinguish commented
from uncommented code and it is able handle concatenated constant
expressions such as `_("Some " + "string")`.
A further benefit is the ability to extract translations with disambiguation
contexts and plural translation calls.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 901a0821f6)
The unespaced slashes confuse xgettext and likely other source
scanners as well.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit c43fa199bf)
The unespaced slashes confuse xgettext and likely other source
scanners as well.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit f1c89c103b)
Use a simple custom format string DSL to assemble the rule description
texts in the overview page.
Also move common code for shared, complex cbi options to the firewall
tool class.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(backported from commit 7944b0a90b)
The underlying fw3 program currently only does IPv4 port forwards while
LuCI incorrectly reports IPv4 + IPv6 for each forward. Adjust the text
accordingly to fix this.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit a178cdb5cf)
* follow upstream name change to ksmbd
* remove old artifacs from "applications\luci-app-cifsd\po\"
Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
Remove the abbreviation coding from the menu item, as it does nor work
in menu and seems to prevent translation of the menu item.
(This was the only menu item in LuCI that had abbr logic.)
Reference to #3553
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
(cherry picked from commit 2a1a9874f5)
Explicitly initialize the address scope value to zero in parse_cidr() and
L_setaddr() to avoid stray scope identifiers getting added when formatting
the address object as string.
Fixes: 1d2b4c777 ("luci-lib-ip: support scoped IPv6 addresses")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 5cbbfaba3e)
- Introduce a new option `initial_directory` which describes the initial
directory to display when nothing is selected, default to the root
directory
- Prevent stray legacy cbi reloads when deselecting files
- Fix within-root-directory-check for initial rendering
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 136b965b25)
- Read interface statistics from /sys/class/net/
- Discover all wireless interfaces, not just specifically named ones
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 8b1d831935)
By tagging option dependencies with `!contains`, dependencies are
considered satisfied when the value is contained in the value of
a related field, instead of being equal to it.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 601c4ee01e)
To mirror the behavior of the Lua runtime, we need to collapse whitepace
in translation source strings before doing the string table lookup.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit aca2c4ba4e)
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 27b21c2a62)
When form options are activated because their dependencies are satisified,
ensure that an immediate validation is triggered to highlight potential
errors without having the user to activate another form control first.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 77c2998f32)