mirror of
				https://github.com/Frooodle/Stirling-PDF.git
				synced 2025-11-01 01:21:18 +01:00 
			
		
		
		
	Fix: redeclaration of const and add: tranlation placeholder for Session Expiry Messages (#2158)
Fix: redeclaration of const
This commit is contained in:
		
							parent
							
								
									a8d0d1a871
								
							
						
					
					
						commit
						cf13803fd4
					
				@ -246,6 +246,7 @@ database.fileNullOrEmpty=يجب ألا يكون الملف فارغًا أو خ
 | 
			
		||||
database.failedImportFile=فشل استيراد الملف
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=Файлът не трябва да е нулев ил
 | 
			
		||||
database.failedImportFile=Неуспешно импортиране на файл
 | 
			
		||||
 | 
			
		||||
session.expired=Вашата сесия е изтекла. Моля, опреснете страницата и опитайте отново.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=File must not be null or empty
 | 
			
		||||
database.failedImportFile=Failed Import File
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=File must not be null or empty
 | 
			
		||||
database.failedImportFile=Failed Import File
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=Fil må ikke være null eller tom
 | 
			
		||||
database.failedImportFile=Kunne ikke importere fil
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=Datei darf nicht null oder leer sein
 | 
			
		||||
database.failedImportFile=Dateiimport fehlgeschlagen
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=File must not be null or empty
 | 
			
		||||
database.failedImportFile=Failed Import File
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=File must not be null or empty
 | 
			
		||||
database.failedImportFile=Failed to import file
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=File must not be null or empty
 | 
			
		||||
database.failedImportFile=Failed Import File
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=El archivo no debe ser nulo o vacío.
 | 
			
		||||
database.failedImportFile=Archivo de importación fallido
 | 
			
		||||
 | 
			
		||||
session.expired=Tu sesión ha caducado. Actualice la página e inténtelo de nuevo.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=File must not be null or empty
 | 
			
		||||
database.failedImportFile=Failed Import File
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=File must not be null or empty
 | 
			
		||||
database.failedImportFile=Failed Import File
 | 
			
		||||
 | 
			
		||||
session.expired=Votre session a expiré. Veuillez recharger la page et réessayer.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=Níor cheart go mbeadh an comhad ar neamhní nó folamh
 | 
			
		||||
database.failedImportFile=Theip ar iompórtáil an chomhaid
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=File must not be null or empty
 | 
			
		||||
database.failedImportFile=Failed Import File
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=File must not be null or empty
 | 
			
		||||
database.failedImportFile=Failed Import File
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=File must not be null or empty
 | 
			
		||||
database.failedImportFile=Failed Import File
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=Berkas tidak boleh null atau kosong
 | 
			
		||||
database.failedImportFile=Impor Berkas Gagal
 | 
			
		||||
 | 
			
		||||
session.expired=Sesi Anda telah kedaluwarsa. Silakan muat ulang halaman dan coba lagi.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=Il file non deve essere nullo o vuoto
 | 
			
		||||
database.failedImportFile=Importazione file non riuscita
 | 
			
		||||
 | 
			
		||||
session.expired=La tua sessione è scaduta. Aggiorna la pagina e riprova.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=ファイルは null または空であってはなり
 | 
			
		||||
database.failedImportFile=ファイルのインポートに失敗
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=File must not be null or empty
 | 
			
		||||
database.failedImportFile=Failed Import File
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=File must not be null or empty
 | 
			
		||||
database.failedImportFile=Failed Import File
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=Fil må ikke være tom eller null
 | 
			
		||||
database.failedImportFile=Import av fil mislyktes
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=Plik nie może być pusty
 | 
			
		||||
database.failedImportFile=Nie udało się zaimportować pliku
 | 
			
		||||
 | 
			
		||||
session.expired=Twoja sesja wygasła. Odśwież stronę i spróbuj ponownie.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=O arquivo não pode estar nulo ou vazio
 | 
			
		||||
database.failedImportFile=Falha ao importar arquivo
 | 
			
		||||
 | 
			
		||||
session.expired=Sua sessão expirou. Por gentileza atualize a página e tente novamente.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=File must not be null or empty
 | 
			
		||||
database.failedImportFile=Failed Import File
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=Fișierul nu trebuie să fie nul sau gol
 | 
			
		||||
database.failedImportFile=Importul Fișierului a Eșuat
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=File must not be null or empty
 | 
			
		||||
database.failedImportFile=Failed Import File
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=File must not be null or empty
 | 
			
		||||
database.failedImportFile=Failed Import File
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=File must not be null or empty
 | 
			
		||||
database.failedImportFile=Failed Import File
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=Filen får inte vara null eller tom
 | 
			
		||||
database.failedImportFile=Misslyckades med att importera fil
 | 
			
		||||
 | 
			
		||||
session.expired=Din session har löpt ut. Uppdatera sidan och försök igen.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=ไฟล์ต้องไม่ว่างเปล
 | 
			
		||||
database.failedImportFile=การนำเข้าไฟล์ล้มเหลว
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=Dosya yok veya boş olmamalıdır
 | 
			
		||||
database.failedImportFile=Dosya İçe Aktarılamadı
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=File must not be null or empty
 | 
			
		||||
database.failedImportFile=Failed Import File
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=Tệp không được để trống hoặc rỗng
 | 
			
		||||
database.failedImportFile=Không thể nhập tệp
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=文件不能为空
 | 
			
		||||
database.failedImportFile=导入文件失败
 | 
			
		||||
 | 
			
		||||
session.expired=Your session has expired. Please refresh the page and try again.
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -246,6 +246,7 @@ database.fileNullOrEmpty=檔案不得為空或空白
 | 
			
		||||
database.failedImportFile=匯入檔案失敗
 | 
			
		||||
 | 
			
		||||
session.expired=您的工作階段已過期。請重新整理頁面並再試一次。
 | 
			
		||||
session.refreshPage=Refresh Page
 | 
			
		||||
 | 
			
		||||
#############
 | 
			
		||||
# HOME-PAGE #
 | 
			
		||||
 | 
			
		||||
@ -1,29 +1,33 @@
 | 
			
		||||
function showErrorBanner(message, stackTrace) {
 | 
			
		||||
(function() {
 | 
			
		||||
 | 
			
		||||
  const { pdfPasswordPrompt, multipleInputsForSingleRequest, disableMultipleFiles, remoteCall, sessionExpired, refreshPage, error } = window.stirlingPDF;
 | 
			
		||||
 | 
			
		||||
  function showErrorBanner(message, stackTrace) {
 | 
			
		||||
    const errorContainer = document.getElementById("errorContainer");
 | 
			
		||||
    errorContainer.style.display = "block"; // Display the banner
 | 
			
		||||
  document.querySelector("#errorContainer .alert-heading").textContent = "Error";
 | 
			
		||||
  document.querySelector("#errorContainer p").textContent = message;
 | 
			
		||||
    errorContainer.querySelector(".alert-heading").textContent = error;
 | 
			
		||||
    errorContainer.querySelector("p").textContent = message;
 | 
			
		||||
    document.querySelector("#traceContent").textContent = stackTrace;
 | 
			
		||||
}
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
function showSessionExpiredPrompt() {
 | 
			
		||||
  function showSessionExpiredPrompt() {
 | 
			
		||||
    const errorContainer = document.getElementById("errorContainer");
 | 
			
		||||
    errorContainer.style.display = "block";
 | 
			
		||||
  document.querySelector("#errorContainer .alert-heading").textContent = sessionExpired;
 | 
			
		||||
  document.querySelector("#errorContainer p").textContent = sessionExpired;
 | 
			
		||||
    errorContainer.querySelector(".alert-heading").textContent = sessionExpired;
 | 
			
		||||
    errorContainer.querySelector("p").textContent = sessionExpired;
 | 
			
		||||
    document.querySelector("#traceContent").textContent = "";
 | 
			
		||||
 | 
			
		||||
    // Optional: Add a refresh button
 | 
			
		||||
    const refreshButton = document.createElement("button");
 | 
			
		||||
  refreshButton.textContent = "Refresh Page";
 | 
			
		||||
    refreshButton.textContent = refreshPage;
 | 
			
		||||
    refreshButton.className = "btn btn-primary mt-3";
 | 
			
		||||
    refreshButton.onclick = () => location.reload();
 | 
			
		||||
    errorContainer.appendChild(refreshButton);
 | 
			
		||||
}
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
let firstErrorOccurred = false;
 | 
			
		||||
  let firstErrorOccurred = false;
 | 
			
		||||
 | 
			
		||||
$(document).ready(function () {
 | 
			
		||||
  $(document).ready(function () {
 | 
			
		||||
    $("form").submit(async function (event) {
 | 
			
		||||
      event.preventDefault();
 | 
			
		||||
      firstErrorOccurred = false;
 | 
			
		||||
@ -87,9 +91,9 @@ $(document).ready(function () {
 | 
			
		||||
        console.error(error);
 | 
			
		||||
      }
 | 
			
		||||
    });
 | 
			
		||||
});
 | 
			
		||||
  });
 | 
			
		||||
 | 
			
		||||
async function handleSingleDownload(url, formData, isMulti = false, isZip = false) {
 | 
			
		||||
  async function handleSingleDownload(url, formData, isMulti = false, isZip = false) {
 | 
			
		||||
    try {
 | 
			
		||||
      const response = await fetch(url, { method: "POST", body: formData });
 | 
			
		||||
      const contentType = response.headers.get("content-type");
 | 
			
		||||
@ -120,9 +124,9 @@ async function handleSingleDownload(url, formData, isMulti = false, isZip = fals
 | 
			
		||||
      console.error("Error in handleSingleDownload:", error);
 | 
			
		||||
      throw error;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
function getFilenameFromContentDisposition(contentDisposition) {
 | 
			
		||||
  function getFilenameFromContentDisposition(contentDisposition) {
 | 
			
		||||
    let filename;
 | 
			
		||||
 | 
			
		||||
    if (contentDisposition && contentDisposition.indexOf("attachment") !== -1) {
 | 
			
		||||
@ -133,9 +137,9 @@ function getFilenameFromContentDisposition(contentDisposition) {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    return filename;
 | 
			
		||||
}
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
async function handleJsonResponse(response) {
 | 
			
		||||
  async function handleJsonResponse(response) {
 | 
			
		||||
    const json = await response.json();
 | 
			
		||||
    const errorMessage = JSON.stringify(json, null, 2);
 | 
			
		||||
    if (
 | 
			
		||||
@ -150,9 +154,9 @@ async function handleJsonResponse(response) {
 | 
			
		||||
    } else {
 | 
			
		||||
      showErrorBanner(json.error + ":" + json.message, json.trace);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
async function handleResponse(blob, filename, considerViewOptions = false, isZip = false) {
 | 
			
		||||
  async function handleResponse(blob, filename, considerViewOptions = false, isZip = false) {
 | 
			
		||||
    if (!blob) return;
 | 
			
		||||
    const downloadOption = localStorage.getItem("downloadOption");
 | 
			
		||||
    if (considerViewOptions) {
 | 
			
		||||
@ -170,16 +174,16 @@ async function handleResponse(blob, filename, considerViewOptions = false, isZip
 | 
			
		||||
      downloadFile(blob, filename);
 | 
			
		||||
    }
 | 
			
		||||
    return { filename, blob };
 | 
			
		||||
}
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
function handleDownloadError(error) {
 | 
			
		||||
  function handleDownloadError(error) {
 | 
			
		||||
    const errorMessage = error.message;
 | 
			
		||||
    showErrorBanner(errorMessage);
 | 
			
		||||
}
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
let urls = []; // An array to hold all the URLs
 | 
			
		||||
  let urls = []; // An array to hold all the URLs
 | 
			
		||||
 | 
			
		||||
function downloadFile(blob, filename) {
 | 
			
		||||
  function downloadFile(blob, filename) {
 | 
			
		||||
    if (!(blob instanceof Blob)) {
 | 
			
		||||
      console.error("Invalid blob passed to downloadFile function");
 | 
			
		||||
      return;
 | 
			
		||||
@ -192,9 +196,9 @@ function downloadFile(blob, filename) {
 | 
			
		||||
    urls.push(url); // Store the URL so it doesn't get garbage collected too soon
 | 
			
		||||
 | 
			
		||||
    return { filename, blob };
 | 
			
		||||
}
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
async function submitMultiPdfForm(url, files) {
 | 
			
		||||
  async function submitMultiPdfForm(url, files) {
 | 
			
		||||
    const zipThreshold = parseInt(localStorage.getItem("zipThreshold"), 10) || 4;
 | 
			
		||||
    const zipFiles = files.length > zipThreshold;
 | 
			
		||||
    let jszip = null;
 | 
			
		||||
@ -274,15 +278,17 @@ async function submitMultiPdfForm(url, files) {
 | 
			
		||||
    }
 | 
			
		||||
    progressBar.css("width", "100%");
 | 
			
		||||
    progressBar.attr("aria-valuenow", Array.from(files).length);
 | 
			
		||||
}
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
function updateProgressBar(progressBar, files) {
 | 
			
		||||
  function updateProgressBar(progressBar, files) {
 | 
			
		||||
    let progress = (progressBar.attr("aria-valuenow") / files.length) * 100 + 100 / files.length;
 | 
			
		||||
    progressBar.css("width", progress + "%");
 | 
			
		||||
    progressBar.attr("aria-valuenow", parseInt(progressBar.attr("aria-valuenow")) + 1);
 | 
			
		||||
}
 | 
			
		||||
window.addEventListener("unload", () => {
 | 
			
		||||
  }
 | 
			
		||||
  window.addEventListener("unload", () => {
 | 
			
		||||
    for (const url of urls) {
 | 
			
		||||
      URL.revokeObjectURL(url);
 | 
			
		||||
    }
 | 
			
		||||
});
 | 
			
		||||
  });
 | 
			
		||||
 | 
			
		||||
})();
 | 
			
		||||
 | 
			
		||||
@ -21,6 +21,10 @@
 | 
			
		||||
    <meta name="msapplication-TileColor" content="#00aba9">
 | 
			
		||||
    <meta name="theme-color" content="#ffffff">
 | 
			
		||||
 | 
			
		||||
    <script>
 | 
			
		||||
      window.stirlingPDF = window.stirlingPDF || {};
 | 
			
		||||
    </script>
 | 
			
		||||
 | 
			
		||||
    <!-- jQuery -->
 | 
			
		||||
    <script th:src="@{'/js/thirdParty/jquery.min.js'}"></script>
 | 
			
		||||
    <script th:src="@{'/js/thirdParty/jquery.validate.min.js'}"></script>
 | 
			
		||||
@ -187,11 +191,15 @@
 | 
			
		||||
 | 
			
		||||
<th:block th:fragment="fileSelector(name, multipleInputsForSingleRequest)" th:with="accept=${accept} ?: '*/*', inputText=${inputText} ?: #{pdfPrompt}, remoteCall=${remoteCall} ?: true, disableMultipleFiles=${disableMultipleFiles} ?: false, notRequired=${notRequired} ?: false">
 | 
			
		||||
                <script th:inline="javascript">
 | 
			
		||||
                  const pdfPasswordPrompt = /*[[#{error.pdfPassword}]]*/ '';
 | 
			
		||||
                  const multipleInputsForSingleRequest = /*[[${multipleInputsForSingleRequest}]]*/ false;
 | 
			
		||||
                  const disableMultipleFiles = /*[[${disableMultipleFiles}]]*/ false;
 | 
			
		||||
                  const remoteCall = /*[[${remoteCall}]]*/ true;
 | 
			
		||||
                  const sessionExpired = /*[[#{session.expired}]]*/ '';
 | 
			
		||||
                  (function() {
 | 
			
		||||
                    window.stirlingPDF.pdfPasswordPrompt = /*[[#{error.pdfPassword}]]*/ '';
 | 
			
		||||
                    window.stirlingPDF.multipleInputsForSingleRequest = /*[[${multipleInputsForSingleRequest}]]*/ false;
 | 
			
		||||
                    window.stirlingPDF.disableMultipleFiles = /*[[${disableMultipleFiles}]]*/ false;
 | 
			
		||||
                    window.stirlingPDF.remoteCall = /*[[${remoteCall}]]*/ true;
 | 
			
		||||
                    window.stirlingPDF.sessionExpired = /*[[#{session.expired}]]*/ '';
 | 
			
		||||
                    window.stirlingPDF.refreshPage = /*[[#{session.refreshPage}]]*/ 'Refresh Page';
 | 
			
		||||
                    window.stirlingPDF.error = /*[[#{error}]]*/ "Error";
 | 
			
		||||
                  })();
 | 
			
		||||
                </script>
 | 
			
		||||
                <script th:src="@{'/js/downloader.js'}"></script>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user