- {% if row.avatar_url %}
-
- {% else %}
-
- {% endif %}
- {{ row.persona_name or row.name_at_join }}
+
+ {% if row.avatar_url %}
+
+ {% else %}
+
+ {% endif %}
+ {{ row.persona_name or row.name_at_join }}
+
last seen {{ ((now - row.last_seen).total_seconds() // 60) | int }}m ago
diff --git a/l4d2web/tests/test_servers.py b/l4d2web/tests/test_servers.py
index b8c0e4c..4b71166 100644
--- a/l4d2web/tests/test_servers.py
+++ b/l4d2web/tests/test_servers.py
@@ -566,6 +566,9 @@ def test_live_state_fragment_renders_current_and_recent(user_client_with_bluepri
# Recent block — only OldPlayer, not MrCool42
assert "OldPersona" in html
assert "old_medium.jpg" in html
+ # Steam profile links — one for the current player, one for the recent.
+ assert "steamcommunity.com/profiles/76561197960828710" in html
+ assert "steamcommunity.com/profiles/76561198021234567" in html
def test_reset_operation_enqueues_job_and_stops_desired_state(user_client_with_blueprints) -> None: