From 568dd5f1742c3c2ad09347cfbaa40eb033ae3561 Mon Sep 17 00:00:00 2001 From: Thomas Lynch Date: Wed, 31 Aug 2022 21:33:38 +1000 Subject: [PATCH] Allow providing file option overrides in addFile, use them to disable strip filename option for drawn tegaki Bugfix checking if non existing box is checked --- gulp/res/js/forms.js | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/gulp/res/js/forms.js b/gulp/res/js/forms.js index 4aca2ce8..fc2578e5 100644 --- a/gulp/res/js/forms.js +++ b/gulp/res/js/forms.js @@ -162,7 +162,7 @@ class postFormHandler { } doTegaki() { - const saveReplay = this.recordTegaki.checked; + const saveReplay = this.recordTegaki && this.recordTegaki.checked; Tegaki.open({ saveReplay, onCancel: () => {}, @@ -171,11 +171,11 @@ class postFormHandler { //add replay file if box was checked if (saveReplay) { const blob = Tegaki.replayRecorder.toBlob(); - this.addFile(new File([blob], `${now}-tegaki.tgkr`, { type: 'tegaki/replay' })); + this.addFile(new File([blob], `${now}-tegaki.tgkr`, { type: 'tegaki/replay' }), { stripFilenames: false }); } //add tegaki image Tegaki.flatten().toBlob(b => { - this.addFile(new File([b], `${now}-tegaki.png`, { type: 'image/png' })); + this.addFile(new File([b], `${now}-tegaki.png`, { type: 'image/png' }), { stripFilenames: false }); }, 'image/png'); //update file list this.updateFilesText(); @@ -444,12 +444,12 @@ class postFormHandler { this.updateFilesText(); } - async addFile(file) { + async addFile(file, fileOptions = {}) { if (this.fileRequired) { //prevent drag+drop issues by removing required this.fileInput.removeAttribute('required'); } this.files.push(file); - console.log('got file', file.name, ); + console.log('got file', file.name); let fileHash; if (window.crypto.subtle) { let fileBuffer; @@ -477,6 +477,7 @@ class postFormHandler { stripFilenames: this.fileUploadList.dataset.stripFilenames === 'true', name: file.name, hash: fileHash, + ...fileOptions, }; switch (file.type.split('/')[0]) { case 'image':