fix: Gerätestandort im Header jetzt einzeilig – kein Zeilenumbruch mehr

- whitespace-nowrap verhindert Umbruch
- truncate + max-w beschränkt Länge visuell
- bessere Darstellung auch bei hoher Auflösung
This commit is contained in:
Ismail Ali
2025-04-30 22:54:12 +02:00
parent 40777f212b
commit 823d12fcea
6 changed files with 73 additions and 41 deletions

View File

@@ -95,11 +95,11 @@ function Header() {
height={60}
priority
/>
<div className="flex flex-col leading-tight">
<div className="flex flex-col leading-tight whitespace-nowrap">
<h2 className="text-xl laptop:text-base xl:text-lg font-bold">
Meldestation
</h2>
<p className="text-gray-600 text-lg laptop:text-sm xl:text-base">
<p className="text-gray-600 text-lg laptop:text-sm xl:text-base truncate max-w-[20vw]">
{deviceName}
</p>
</div>

View File

@@ -26,34 +26,63 @@ export default function TdrEinstellung({ slot }: Props) {
const handleSave = () => {
const { daempfung, geschwindigkeit, trigger } = tdrData;
if (!daempfung.trim() || !geschwindigkeit.trim() || !trigger.trim()) {
alert("Bitte alle Felder ausfüllen.");
return;
}
const base = `${window.location.origin}/CPL?/kabelueberwachung.html`;
const isDev = window.location.hostname === "localhost";
const urls = [
`${base}&KTD${slot}=${tdrData.daempfung.trim()}`,
`${base}&KTS${slot}=${tdrData.geschwindigkeit.trim()}`,
`${base}&KTE${slot}=${tdrData.trigger.trim()}`,
];
if (isDev) {
const requests = [
{ key: "win_tdrAtten", value: daempfung.trim() },
{ key: "win_tdrSpeed", value: geschwindigkeit.trim() },
{ key: "win_tdrTrigger", value: trigger.trim() },
];
Promise.all(
urls.map((url) =>
fetch(url).then((res) => {
if (!res.ok) throw new Error(`Fehler bei ${url}`);
return res.text();
})
Promise.all(
requests.map(({ key, value }) =>
fetch(
`/api/cpl/updateTdrSettingsDataAPIHandler?key=${key}&slot=${slot}&value=${value}`
).then((res) => {
if (!res.ok) throw new Error(`Fehler bei ${key}`);
return res.json();
})
)
)
)
.then(() => {
alert("TDR-Einstellungen erfolgreich gesendet.");
})
.catch((err) => {
console.error("Fehler beim Senden:", err);
alert("Fehler beim Senden der TDR-Einstellungen.");
});
.then(() => {
alert("TDR-Mockdaten erfolgreich gespeichert.");
})
.catch((err) => {
console.error("Fehler beim Speichern der Mockdaten:", err);
alert("Fehler beim Speichern der TDR-Einstellungen.");
});
} else {
const base = `${window.location.origin}/CPL?/kabelueberwachung.html`;
const urls = [
`${base}&KTD${slot}=${daempfung.trim()}`,
`${base}&KTS${slot}=${geschwindigkeit.trim()}`,
`${base}&KTE${slot}=${trigger.trim()}`,
];
Promise.all(
urls.map((url) =>
fetch(url).then((res) => {
if (!res.ok) throw new Error(`Fehler bei ${url}`);
return res.text();
})
)
)
.then(() => {
alert("TDR-Einstellungen erfolgreich gesendet.");
})
.catch((err) => {
console.error("Fehler beim Senden:", err);
alert("Fehler beim Senden der TDR-Einstellungen.");
});
}
};
const handleTdrToggle = () => {
@@ -65,7 +94,7 @@ export default function TdrEinstellung({ slot }: Props) {
if (isDev) {
fetch(
`/api/cpl/updateTdrSettingsDataAPIHandler?slot=${slot}&value=${
`/api/cpl/updateTdrSettingsDataAPIHandler?key=win_tdrActive&slot=${slot}&value=${
newState ? 1 : 0
}`
)