mirror of
https://github.com/Frooodle/Stirling-PDF.git
synced 2025-02-21 00:17:05 +01:00
Fix file clear for errors (#2302)
* Prevent file input from being removed when an error occurs * Fix a bug preventing fetch when 'Bored waiting' btn isn't present
This commit is contained in:
parent
61bccd1d8b
commit
543ad083a2
@ -39,7 +39,9 @@
|
||||
const originalButtonText = submitButton.textContent;
|
||||
var boredWaiting = localStorage.getItem("boredWaiting") || "disabled";
|
||||
|
||||
showGameBtn.style.display = "none";
|
||||
if (showGameBtn) {
|
||||
showGameBtn.style.display = "none";
|
||||
}
|
||||
|
||||
// Remove empty file entries
|
||||
for (let [key, value] of formData.entries()) {
|
||||
@ -73,8 +75,10 @@
|
||||
|
||||
clearFileInput();
|
||||
clearTimeout(timeoutId);
|
||||
showGameBtn.style.display = "none";
|
||||
showGameBtn.style.marginTop = "";
|
||||
if (showGameBtn) {
|
||||
showGameBtn.style.display = "none";
|
||||
showGameBtn.style.marginTop = "";
|
||||
}
|
||||
submitButton.textContent = originalButtonText;
|
||||
submitButton.disabled = false;
|
||||
|
||||
@ -95,7 +99,6 @@
|
||||
}
|
||||
|
||||
} catch (error) {
|
||||
clearFileInput();
|
||||
clearTimeout(timeoutId);
|
||||
showGameBtn.style.display = "none";
|
||||
submitButton.textContent = originalButtonText;
|
||||
@ -117,13 +120,13 @@
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
async function handleSingleDownload(url, formData, isMulti = false, isZip = false) {
|
||||
const startTime = performance.now();
|
||||
const file = formData.get('fileInput');
|
||||
let success = false;
|
||||
let errorMessage = null;
|
||||
|
||||
|
||||
try {
|
||||
const response = await fetch(url, { method: "POST", body: formData });
|
||||
const contentType = response.headers.get("content-type");
|
||||
@ -146,7 +149,7 @@
|
||||
|
||||
const blob = await response.blob();
|
||||
success = true;
|
||||
|
||||
|
||||
if (contentType.includes("application/pdf") || contentType.includes("image/")) {
|
||||
clearFileInput();
|
||||
return handleResponse(blob, filename, !isMulti, isZip);
|
||||
@ -158,12 +161,11 @@
|
||||
} catch (error) {
|
||||
success = false;
|
||||
errorMessage = error.message;
|
||||
clearFileInput();
|
||||
console.error("Error in handleSingleDownload:", error);
|
||||
throw error;
|
||||
} finally {
|
||||
const processingTime = performance.now() - startTime;
|
||||
|
||||
|
||||
// Capture analytics
|
||||
const pageCount = file && file.type === 'application/pdf' ? await getPDFPageCount(file) : null;
|
||||
if(analyticsEnabled) {
|
||||
@ -191,7 +193,7 @@
|
||||
|
||||
return filename;
|
||||
}
|
||||
|
||||
|
||||
async function handleJsonResponse(response) {
|
||||
const json = await response.json();
|
||||
const errorMessage = JSON.stringify(json, null, 2);
|
||||
|
Loading…
Reference in New Issue
Block a user