reformatted file structure and reformatted for phones, as well as fixed web sockets for remote devices
This commit is contained in:
33
tools/web_monitor/settings/__init__.py
Normal file
33
tools/web_monitor/settings/__init__.py
Normal file
@@ -0,0 +1,33 @@
|
||||
from fastapi import Request, APIRouter
|
||||
from fastapi.responses import RedirectResponse
|
||||
|
||||
from tools.web_monitor.template import templates
|
||||
from tools.web_monitor.func import get_current_miner_list
|
||||
from tools.web_monitor.settings.func import get_current_settings, update_settings
|
||||
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
|
||||
@router.route("/", methods=["GET", "POST"])
|
||||
async def settings(request: Request):
|
||||
return templates.TemplateResponse("settings.html", {
|
||||
"request": request,
|
||||
"cur_miners": get_current_miner_list(),
|
||||
"settings": get_current_settings()
|
||||
})
|
||||
|
||||
|
||||
@router.post("/update")
|
||||
async def update_settings_page(request: Request):
|
||||
data = await request.form()
|
||||
graph_data_sleep_time = data.get('graph_data_sleep_time')
|
||||
miner_data_timeout = data.get('miner_data_timeout')
|
||||
miner_identify_timeout = data.get('miner_identify_timeout')
|
||||
new_settings = {
|
||||
"graph_data_sleep_time": int(graph_data_sleep_time),
|
||||
"miner_data_timeout": int(miner_data_timeout),
|
||||
"miner_identify_timeout": int(miner_identify_timeout),
|
||||
}
|
||||
update_settings(new_settings)
|
||||
return RedirectResponse(request.url_for("settings"))
|
||||
20
tools/web_monitor/settings/func.py
Normal file
20
tools/web_monitor/settings/func.py
Normal file
@@ -0,0 +1,20 @@
|
||||
import toml
|
||||
import os
|
||||
|
||||
|
||||
def get_current_settings():
|
||||
try:
|
||||
with open(os.path.join(os.getcwd(), "settings/web_settings.toml"), "r") as settings_file:
|
||||
settings = toml.loads(settings_file.read())
|
||||
except:
|
||||
settings = {
|
||||
"graph_data_sleep_time": 1,
|
||||
"miner_data_timeout": 5,
|
||||
"miner_identify_timeout": 5,
|
||||
}
|
||||
return settings
|
||||
|
||||
|
||||
def update_settings(settings):
|
||||
with open(os.path.join(os.getcwd(), "settings/web_settings.toml"), "w") as settings_file:
|
||||
settings_file.write(toml.dumps(settings))
|
||||
3
tools/web_monitor/settings/web_settings.toml
Normal file
3
tools/web_monitor/settings/web_settings.toml
Normal file
@@ -0,0 +1,3 @@
|
||||
graph_data_sleep_time = 1
|
||||
miner_data_timeout = 5
|
||||
miner_identify_timeout = 5
|
||||
Reference in New Issue
Block a user