Startseite: Messer-Server-Liste entfernt, sie steht jetzt in der Lobby bei Messerrunde

This commit is contained in:
mregosar committed 2026-11-01 17:16:58 +01:00
1 parent fb96fb5d08
commit af2ecf7a3a
2 files changed
+2 -37

No files matched your search

+1 -36
View File
@@ -1,4 +1,4 @@
import { useEffect, useState } from 'react';
import { useState } from 'react';
import { Link, useNavigate } from 'react-router-dom';
import { api } from '../lib/api.js';
import { FORMAT_LABEL, serverLabel, timeAgo } from '../lib/labels.js';
@@ -30,7 +30,6 @@ export default function Overview() {
<Steps current={step} />
<KnifeServers />
{matches === null ? (
<p className="muted">Lade Matches …</p>
@@ -253,37 +252,3 @@ function CodeTicket() {
</form>
);
}
/** Offene Messer-Server für die Seitenwahl, zum direkten Verbinden. */
function KnifeServers() {
const [servers, setServers] = useState([]);
useEffect(() => {
let alive = true;
const load = () => api('/knife-servers').then((res) => alive && setServers(res.servers)).catch(() => {});
load();
const t = setInterval(load, 10_000);
return () => {
alive = false;
clearInterval(t);
};
}, []);
if (servers.length === 0) return null;
return (
<section className="group knife-public">
<h2>Messer-Server für die Seitenwahl <span className="count">{servers.length}</span></h2>
<p className="muted small">Ohne Passwort, auch im LAN-Reiter von Steam. Nach eurer Messerrunde setzt sich der Server selbst zurück.</p>
<ul className="knife-list">
{servers.map((k) => (
<li key={k.id}>
<strong>{k.name}</strong>
{k.modeShort && <span className="knife-mode">{k.modeShort}</span>}
<span className="muted small">{k.mapName}</span>
<span className="small">{k.playerCount ? `${k.playerCount} Spieler` : 'frei'}</span>
<code>{k.connect}</code>
<a className="btn btn-sm" href={k.steamUrl}>Verbinden</a>
</li>
))}
</ul>
</section>
);
}