fakecheck
This commit is contained in:
@@ -136,6 +136,8 @@ document.addEventListener("DOMContentLoaded", () => {
|
||||
return "showDirectoryPicker" in window;
|
||||
}
|
||||
|
||||
// Kann theoretisch bleiben, wird aktuell aber NICHT benutzt,
|
||||
// damit showDirectoryPicker direkt im Click-Handler liegt.
|
||||
async pickDirectory() {
|
||||
if (!this.hasFsApiSupport()) {
|
||||
throw new Error("File System Access API wird von diesem Browser nicht unterstützt.");
|
||||
@@ -495,25 +497,46 @@ document.addEventListener("DOMContentLoaded", () => {
|
||||
|
||||
// --- Event-Handler ------------------------------------------------------
|
||||
|
||||
// WICHTIG: showDirectoryPicker direkt im Click-Handler (ohne async/await),
|
||||
// damit "User activation is required" nicht mehr triggert.
|
||||
let isPickingDir = false;
|
||||
|
||||
if (btnPickDir) {
|
||||
btnPickDir.addEventListener("click", async () => {
|
||||
try {
|
||||
const handle = await tester.pickDirectory();
|
||||
if (selectedPathText) {
|
||||
selectedPathText.textContent =
|
||||
'USB-Ordner ausgewählt (Name: "' + (handle.name || "Unbekannt") + '").';
|
||||
}
|
||||
if (btnClearSel) btnClearSel.disabled = false;
|
||||
setStatus("USB-Verzeichnis ausgewählt. Wähle jetzt einen Testmodus.");
|
||||
logLine("Verzeichnis ausgewählt: " + (handle.name || "[ohne Namen]"));
|
||||
updateStartButtonState();
|
||||
} catch (err) {
|
||||
if (err.name === "AbortError") {
|
||||
logLine("Verzeichnisauswahl abgebrochen.", "warn");
|
||||
} else {
|
||||
logLine("Fehler bei Verzeichnisauswahl: " + err.message, "error");
|
||||
}
|
||||
btnPickDir.addEventListener("click", () => {
|
||||
if (isPickingDir) return; // Doppelklick-Schutz
|
||||
isPickingDir = true;
|
||||
|
||||
if (!("showDirectoryPicker" in window)) {
|
||||
logLine("File System Access API wird von diesem Browser nicht unterstützt.", "error");
|
||||
if (fsapiWarning) fsapiWarning.style.display = "block";
|
||||
isPickingDir = false;
|
||||
return;
|
||||
}
|
||||
|
||||
window.showDirectoryPicker()
|
||||
.then((handle) => {
|
||||
tester.rootHandle = handle;
|
||||
if (selectedPathText) {
|
||||
selectedPathText.textContent =
|
||||
'USB-Ordner ausgewählt (Name: "' + (handle.name || "Unbekannt") + '").';
|
||||
}
|
||||
if (btnClearSel) btnClearSel.disabled = false;
|
||||
setStatus("USB-Verzeichnis ausgewählt. Wähle jetzt einen Testmodus.");
|
||||
logLine("Verzeichnis ausgewählt: " + (handle.name || "[ohne Namen]"));
|
||||
updateStartButtonState();
|
||||
})
|
||||
.catch((err) => {
|
||||
if (err && err.name === "AbortError") {
|
||||
logLine("Verzeichnisauswahl abgebrochen.", "warn");
|
||||
} else if (err) {
|
||||
logLine("Fehler bei Verzeichnisauswahl: " + err.message, "error");
|
||||
} else {
|
||||
logLine("Unbekannter Fehler bei Verzeichnisauswahl.", "error");
|
||||
}
|
||||
})
|
||||
.finally(() => {
|
||||
isPickingDir = false;
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
@@ -578,14 +601,18 @@ document.addEventListener("DOMContentLoaded", () => {
|
||||
// Ergebnis speichern: Backend entscheidet, ob der User eingeloggt ist
|
||||
await saveReportToBackend(report);
|
||||
} catch (err) {
|
||||
if (err.name === "AbortError") {
|
||||
if (err && err.name === "AbortError") {
|
||||
setStatus("Test wurde abgebrochen.");
|
||||
setOverallStatus("warn", "Test abgebrochen.");
|
||||
logLine("Test wurde vom Benutzer abgebrochen.", "warn");
|
||||
} else {
|
||||
} else if (err) {
|
||||
setStatus("Fehler: " + err.message);
|
||||
setOverallStatus("bad", "Fehler im Browser-Test.");
|
||||
logLine("Fehler im Test: " + err.message, "error");
|
||||
} else {
|
||||
setStatus("Unbekannter Fehler im Test.");
|
||||
setOverallStatus("bad", "Fehler im Browser-Test.");
|
||||
logLine("Unbekannter Fehler im Test.", "error");
|
||||
}
|
||||
} finally {
|
||||
isRunning = false;
|
||||
@@ -689,7 +716,7 @@ document.addEventListener("DOMContentLoaded", () => {
|
||||
);
|
||||
} catch (err) {
|
||||
if (saveError) saveError.style.display = "block";
|
||||
logLine("Fehler beim Speichern im Backend: " + err.message, "error");
|
||||
logLine("Fehler beim Speichern im Backend: " + (err ? err.message : "unbekannt"), "error");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user