fix: checkbox cannot be updated dynamically

This commit is contained in:
2026-07-05 17:11:07 +08:00
parent 091b5c011a
commit 8741cb6142
2 changed files with 15 additions and 5 deletions
+2 -2
View File
@@ -71,6 +71,7 @@ from module.webui.utils import (
parse_pin_value,
raise_exception,
re_fullmatch,
to_pin_value,
)
from module.webui.widgets import (
BinarySwitchButton,
@@ -496,11 +497,10 @@ class AlasGUI(Frame):
valid.append(k)
for set_key, set_value in config_updater.save_callback(k, v):
logger.info([set_key, set_value, pin["_".join(set_key.split("."))]])
modified[set_key] = set_value
deep_set(config, set_key, set_value)
valid.append(set_key)
pin["_".join(set_key.split("."))] = set_value
pin["_".join(set_key.split("."))] = to_pin_value(set_value)
else:
modified.pop(k)
invalid.append(k)
+13 -3
View File
@@ -11,9 +11,7 @@ from typing import Callable, Generator, List
import pywebio
from pywebio.input import PASSWORD, input
from pywebio.output import PopupSize, popup, put_html, toast
from pywebio.session import eval_js
from pywebio.session import info as session_info
from pywebio.session import register_thread, run_js
from pywebio.session import eval_js, info as session_info, register_thread, run_js
from rich.console import Console
from rich.terminal_theme import TerminalTheme
@@ -427,6 +425,18 @@ def parse_pin_value(val, valuetype: str = None):
return v
def to_pin_value(val):
"""
Convert bool to checkbox
"""
if val is True:
return [True]
elif val is False:
return []
else:
return val
def login(password):
if get_localstorage("password") == str(password):
return True