From 1e443755b03232b452b3b9cf8c2672aa6b354a97 Mon Sep 17 00:00:00 2001 From: FMSMITH91 <12152698+FMSMITH91@users.noreply.github.com> Date: Sat, 8 Aug 2026 22:05:57 -0500 Subject: [PATCH] fix: stop the Details tab repeating what the page header already says MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit "Installed: Yes" could never say anything else — server_detail redirects a server that is still installing, so the row was decoration. Pulling that thread, most of the card was a second copy of the header: Name the

two inches above it Game Type header subtitle Port header subtitle Status the header badge — and worse, the badge is the one the poll keeps current, so this copy went STALE the moment the server changed state while you were looking at it Installed always Yes, see above What is left is what you cannot read anywhere else: the three switches, plus Short Name — and that only when it differs from the display name, which is the case worth pointing out (a custom-named instance whose Linux user is something else). The card is titled Server Settings now, because that is what it is. Same thing in the Host card: "Public IP: 147.135.70.122" sat directly above "Connect: 147.135.70.122:28960". The Connect row is the same address plus the port AND the one you can click to copy, so Public IP now appears only while the address is still resolving, where "resolving…" is real information. Measured on a rendered page: the public IP went from appearing twice to once, Status from twice to once, Installed and Game Type from once to not at all. Port still appears twice and should — once as metadata, once inside the copyable connect string. Co-Authored-By: Claude Opus 5 --- templates/server_detail.html | 43 ++++++++++++++---------------------- 1 file changed, 16 insertions(+), 27 deletions(-) diff --git a/templates/server_detail.html b/templates/server_detail.html index cdfc85b..c0ffe28 100644 --- a/templates/server_detail.html +++ b/templates/server_detail.html @@ -287,36 +287,21 @@

{{ server.name }}

-
Server Info
+
Server Settings
+ {# Name, Game Type, Port and Status all live in the page header a few lines up, and the + header's badge is the one the poll keeps current — this table's copy of Status went + stale the moment the server changed state while you were looking at it. "Installed" + could only ever say Yes: the route redirects a server that is still installing. What is + left is the part you cannot read anywhere else — the switches. #} + {% if server.short_name != server.name %} - - - - - - - - - - - - - - - - - - - - - - + + + {% endif %} @@ -373,10 +358,14 @@

{{ server.name }}

+ {# Only while there is nothing to connect to yet. Once resolved, the Connect row below is + the same address plus the port — and it is the one you can click to copy. #} + {% if not public_host %} - + + {% endif %}
Name{{ server.name }}
Short Name{{ server.short_name }}
Game Type{{ server.game_display or server.game_type }}
Port{{ server.port }}
Status - - {{ server.status|title }} -
Installed{{ "Yes" if server.installed else "No" }}Short Name + (the Linux user){{ server.short_name }}
Auto-start & recover (monitor, every 5 min) Machine {{ remote.name }}{% if remote.is_local %} this panel{% endif %}
Public IP{{ public_host or 'resolving…' }}resolving…
Connect {% set caddr = (public_host ~ ':' ~ server.port) if public_host else (':' ~ server.port) %}