download-upload-files.js

Author: Anonymous hyjl2l

Expire: Never

(function () { // initiates a file download in the browser for files generated in the C# code window.saveFile = function (bytesBase64, mimeType, fileName) { var fileUrl = "data:" + mimeType + ";base64," + bytesBase64; fetch(fileUrl) .then(response => response.blob()) .then(blob => { var link = window.document.createElement("a"); link.href = window.URL.createObjectURL(blob, { type: mimeType }); link.download = fileName; document.body.appendChild(link); link.click(); document.body.removeChild(link); }); } // provides file content for files selected in JS to C# without saving on the server window.getUploadedFile = (inputID) => { var inputEl = document.getElementById(inputID); if (inputEl.files.length == 0) { return ""; } else if (inputEl.files[0].size > (4 * 1024 * 1024)) { // 4MB inputEl.value = ""; alert("File size too large. Max allowed size is 4MB."); return ""; } else if (inputEl.accept.length && inputEl.accept.indexOf(inputEl.files[0].name.split('.').pop()) < 0) { inputEl.value = ""; alert("Allowed file types: " + inputEl.accept); return ""; } const fileReader = new FileReader(); return new Promise((resolve) => { fileReader.onloadend = function (e) { var data = { fileName: inputEl.files[0].name, fileData: e.target.result.split('base64,')[1] }; resolve(data); }; fileReader.readAsDataURL(inputEl.files[0]); }); }; })();

Attached Files

9/8/2024

JavaScript is not enabled in your browser. Most features and paste content is missing . Switch to full experience by editing url from /nojs/[link] to /share/[link]