Revert to the previous uci-defaults behaviour of only setting the
selected theme to Bootstrap if the Bootstrap entry didn't exist yet
in the configuration.
Ref: https://forum.openwrt.org/t/luci-theme-behaviour-change/112047
Fixes: ed86f03a9f ("luci-theme-bootstrap: add explicit dark/light mode selection")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Register two further "virtual" themes called BootstrapDark and
BootstrapLight which force dark and light mode respectively.
The actual Bootstrap theme itself will continue to auto-select
dark mode preference based on OS/Browser preference settings.
Fixes: #5492
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Fixed overlay display failures for users on mobile, or users who booted
up in safe mode XD. Noticeable when vertical or horizontal real-estate
is too small for the displayed overlay.
This failure is most evident when you "edit" an interface, or display
your unsaved changes.
When content is wider than the screen view, the table hugs the (widest)
content maximally, and the overlay window becomes scrollable.
Disabled -webkit-overflow-scrolling, left, and right, because both FF
and Safari disable them as invalid anyway.
Signed-off-by: Paul Dee <systemcrash@users.noreply.github.com>
[Merge duplicate modal declarations, remove not applicable modal
flexbox properties]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
- introduce new variable --text-color-highest which results in #000/#fff
for bright and dark modes respectively
- drop unused navigation style rules and selectors
- use sticky positioning for header bar and drop top margin hacks
- use flex box layout for header bar contents
- use uniform line-height for button elements instead of pixel paddings
- fix too bright .cbi-value bottom border in mobile dark mode
- avoid rendering duplicate .cbi-value bottom borders for nested sections
- simplify header markup, get rid of unused container elements
- use non-wrapping flex box layout for page actions, prioritize primary
action button in automatic width calculation
- fix border radius of ifacebox headers
- use brightest color for log output textareas
- fix dark mode colors for mode menu
- use flex layout for footer
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Some devices offer a full LuCI interface from their recovery interface.
As it's read-only it should only be used for installing sysupgrades and
therefore warn users that no settings are saved.
Signed-off-by: Paul Spooren <mail@aparcar.org>
This calls striptags() on the hostname to prevent any XSS over the
hostname. This should fix CVE-2021-33425 as far as I understood it.
If someone adds some Javascript into system.@system[0].hostname it would
have been directly added to the page, this prevents the problem.
This can only be exploited by someone being able to modify the uci
configuration, normally a user with such privileges could also just
modify the webpage.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Remove the reference to setting a password being linked to SSH capability.
(SSH has been initially enabled since year 2015.)
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
In the Material theme, clicking on the logo takes you to the status page.
This seems logical, and is very helpful. But in Bootstrap, it doesn't
do anything, so just pulling the same href from Material to Bootstrap,
so the link works in Bootstrap as well.
Signed-off-by: Russell Morris <rmorris@rkmorris.us>
[adjust commit subject, squash commits]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
If we build multi-themes into firmware, each of them set itself
to be the default theme, what theme should it be?
To make it clear, we only set mediaurlbase if the theme is the
first time to be installed/built-in.
This resolve the issue that theme always change to somewhat default
after upgrading the firmware even with a config-keep-upgrade
Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
The `data-type` attribute is used to bind datatype validators to a widget
while some templates used the same attribute to denote the name of the
underlying widget.
Change the `data-type` attributes referring to the widget name to
`data-widget` in order to stop the JS token error spam.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
- Don't remove background for disabled buttons
- Move inactive tooltip element further out of the view area
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
- Apply the same style to <button> and <input type="button"> elements
- Increase width of modal CBI dialogs
Signed-off-by: Jo-Philipp Wich <jo@mein.io>