Commit Graph

12 Commits

Author SHA1 Message Date
b455b2fd15 Fix IP filter to check AP's own IP from DOM
Previous implementation fetched connected client IPs via API (which was
returning empty data). The filter now checks the AP's own management IP
directly from the data already in the table — no network request, instant.

An AP is shown when its IP last octet is between 150 and 155 inclusive.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-27 15:51:43 +02:00
d693321ba1 Add IP range filter button (.150–.155)
New "Filter .150–.155" button fetches all connected clients via
GET /api/all-clients (one request per site, grouped by AP MAC),
then hides any AP row that has no client with a last-octet IP
between 150 and 155. Clicking again clears the filter.

The name/site search and IP filter compose (AND logic) via a shared
applyFilters() function. Client data is cached in-memory for the
current page session so repeated toggles don't re-fetch.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-27 15:48:50 +02:00
1041777b9a Lock reboot button permanently after confirm
After confirming a reboot (single or bulk), the row button and checkbox
are immediately disabled and can't be re-triggered in the current session.
Button text changes to "Rebooting…" while the request is in flight, then
"Rebooted" on success or "Failed" on error — but stays disabled either way.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-27 15:43:41 +02:00
47f553f410 Add connected clients popup per AP
Clicking an AP name opens a modal showing all wireless clients currently
associated with that AP: hostname/MAC, IP, SSID, band, channel, signal
strength with quality label, TX/RX link rate, and connection uptime.

Backend: GET /api/ap-clients?mac=&site_key= calls the Omada clients
endpoint with filters.apMac; falls back to client-side filtering if the
controller doesn't support that query param.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-27 15:13:05 +02:00
f4ac0857b4 Update docker-compose.yml 2026-04-27 15:00:00 +02:00
71f01abab0 Update docker-compose.yml 2026-04-27 14:58:46 +02:00
6323aee22c Update docker-compose.yml 2026-04-27 14:57:03 +02:00
12f4bd0156 Fix docker-compose: remove deprecated version field, clear credentials
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-27 14:55:18 +02:00
df5d6ad23a Update docker-compose.yml 2026-04-27 14:49:02 +02:00
8696d11514 Rename container and image to qwe-salus
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-27 14:47:35 +02:00
ec9aa1196e Update docker-compose.yml 2026-04-27 14:44:46 +02:00
284924e86d Initial release — Salus by Stranto v1.6.1.0
FastAPI/Jinja2 web app for viewing and rebooting TP-Link Omada APs
across all sites. Authentik OIDC auth, SQLite audit log, Docker deploy.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-27 14:36:02 +02:00