From a837ba2c030d9b6e789a691f996b5547fa487bc4 Mon Sep 17 00:00:00 2001 From: devmatrix Date: Fri, 20 Feb 2026 19:56:40 +0000 Subject: [PATCH] Add auto-mode icon for Mode status --- server.log | 109 +------------------------------------ static/icons/auto-mode.svg | 13 +++++ web_server.py | 2 +- 3 files changed, 17 insertions(+), 107 deletions(-) create mode 100644 static/icons/auto-mode.svg diff --git a/server.log b/server.log index 96867d4..4018fa0 100644 --- a/server.log +++ b/server.log @@ -1,109 +1,6 @@ -INFO: Started server process [68185] +INFO: Started server process [68799] INFO: Waiting for application startup. INFO: Application startup complete. INFO: Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit) -INFO: 192.168.5.30:57869 - "GET /api/status HTTP/1.1" 401 Unauthorized -INFO: 192.168.5.30:57869 - "GET /login HTTP/1.1" 200 OK -INFO: 192.168.5.30:57869 - "GET /icons/fan.svg HTTP/1.1" 304 Not Modified -/home/devmatrix/projects/fan-controller-v2/web_server.py:153: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). - self._sessions[token] = (username, datetime.utcnow() + timedelta(days=7)) -INFO: 192.168.5.30:58782 - "POST /api/auth/login HTTP/1.1" 200 OK -INFO: 192.168.5.30:58782 - "GET / HTTP/1.1" 200 OK -INFO: 192.168.5.30:58782 - "GET /icons/fan-propeller.svg HTTP/1.1" 304 Not Modified -/home/devmatrix/projects/fan-controller-v2/web_server.py:160: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). - if datetime.utcnow() > expiry: -2026-02-20 19:52:52,583 - fan_controller - INFO - Loaded config from /home/devmatrix/projects/fan-controller-v2/data/config.json -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /favicon.ico HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 127.0.0.1:46350 - "GET /login HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -2026-02-20 19:54:08,518 - fan_controller - INFO - Connected to IPMI at 192.168.5.191 -INFO: 192.168.5.30:59190 - "POST /api/test HTTP/1.1" 200 OK -/home/devmatrix/projects/fan-controller-v2/web_server.py:160: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). - if datetime.utcnow() > expiry: -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -2026-02-20 19:54:27,369 - fan_controller - INFO - Saved config to /home/devmatrix/projects/fan-controller-v2/data/config.json -2026-02-20 19:54:27,369 - fan_controller - INFO - HTTP sensor client initialized for http://192.168.5.200:8888 -INFO: 192.168.5.30:59190 - "POST /api/config/http HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -2026-02-20 19:54:30,668 - fan_controller - INFO - Saved config to /home/devmatrix/projects/fan-controller-v2/data/config.json -2026-02-20 19:54:30,834 - fan_controller - INFO - Manual fan control enabled -2026-02-20 19:54:30,994 - fan_controller - INFO - Connected to IPMI at 192.168.5.191 -2026-02-20 19:54:30,994 - fan_controller - INFO - HTTP sensor client initialized for http://192.168.5.200:8888 -2026-02-20 19:54:30,995 - fan_controller - INFO - IPMI Controller service started -INFO: 192.168.5.30:59190 - "POST /api/control/auto HTTP/1.1" 200 OK -/home/devmatrix/projects/fan-controller-v2/web_server.py:160: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). - if datetime.utcnow() > expiry: -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -2026-02-20 19:54:31,149 - fan_controller - INFO - Manual fan control enabled -/home/devmatrix/projects/fan-controller-v2/web_server.py:160: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). - if datetime.utcnow() > expiry: -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -/home/devmatrix/projects/fan-controller-v2/web_server.py:160: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). - if datetime.utcnow() > expiry: -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -2026-02-20 19:54:37,530 - fan_controller - INFO - Fan 0xff speed set to 27% -2026-02-20 19:54:37,531 - fan_controller - INFO - All fans set to 27% (Temp 36.0°C) -/home/devmatrix/projects/fan-controller-v2/web_server.py:160: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). - if datetime.utcnow() > expiry: -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -/home/devmatrix/projects/fan-controller-v2/web_server.py:160: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). - if datetime.utcnow() > expiry: -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -/home/devmatrix/projects/fan-controller-v2/web_server.py:160: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). - if datetime.utcnow() > expiry: -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -2026-02-20 19:54:53,287 - fan_controller - INFO - Fan 0xff speed set to 31% -2026-02-20 19:54:53,287 - fan_controller - INFO - All fans set to 31% (Temp 38.0°C) -INFO: 192.168.5.30:59190 - "GET / HTTP/1.1" 200 OK -INFO: 192.168.5.30:59190 - "GET /icons/fan.svg HTTP/1.1" 304 Not Modified -/home/devmatrix/projects/fan-controller-v2/web_server.py:160: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). - if datetime.utcnow() > expiry: -INFO: 192.168.5.30:59190 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:51993 - "GET /icons/sun.svg HTTP/1.1" 304 Not Modified -INFO: 192.168.5.30:64648 - "GET /icons/lock-closed.svg HTTP/1.1" 304 Not Modified -INFO: 192.168.5.30:59631 - "GET /icons/arrow-right-on-rectangle.svg HTTP/1.1" 304 Not Modified -INFO: 192.168.5.30:51865 - "GET /icons/clock.svg HTTP/1.1" 304 Not Modified -INFO: 192.168.5.30:62718 - "GET /icons/server-stack.svg HTTP/1.1" 304 Not Modified -INFO: 192.168.5.30:59190 - "GET /icons/fire.svg HTTP/1.1" 304 Not Modified -INFO: 192.168.5.30:64648 - "GET /icons/list-bullet.svg HTTP/1.1" 304 Not Modified -INFO: 192.168.5.30:51993 - "GET /icons/fan-propeller.svg HTTP/1.1" 304 Not Modified -INFO: 192.168.5.30:59631 - "GET /icons/adjustments-horizontal.svg HTTP/1.1" 304 Not Modified -INFO: 192.168.5.30:59190 - "GET /icons/document-text.svg HTTP/1.1" 304 Not Modified -INFO: 192.168.5.30:62718 - "GET /icons/chart-bar.svg HTTP/1.1" 304 Not Modified -INFO: 192.168.5.30:62718 - "GET /favicon.ico HTTP/1.1" 200 OK -INFO: 192.168.5.30:62718 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:62718 - "GET /api/status HTTP/1.1" 200 OK -INFO: 192.168.5.30:62718 - "GET /login HTTP/1.1" 200 OK +INFO: 127.0.0.1:48966 - "GET / HTTP/1.1" 200 OK +INFO: 127.0.0.1:56088 - "GET / HTTP/1.1" 200 OK diff --git a/static/icons/auto-mode.svg b/static/icons/auto-mode.svg new file mode 100644 index 0000000..b0c2716 --- /dev/null +++ b/static/icons/auto-mode.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/web_server.py b/web_server.py index ccc2b9f..d17c920 100644 --- a/web_server.py +++ b/web_server.py @@ -492,7 +492,7 @@ def get_html(theme="dark"):
-
-
+
Mode
-