diff --git a/rapids/templates/rapids/rapid_form.html b/rapids/templates/rapids/rapid_form.html index a1faf995..8e9f492d 100755 --- a/rapids/templates/rapids/rapid_form.html +++ b/rapids/templates/rapids/rapid_form.html @@ -162,6 +162,24 @@ } + function addFile(f, feedback) { + let dT = new DataTransfer(); + dT.clearData(); + dT.items.add(f); + for (let i = 0; i < inputs.length; i++) { + el = inputs.get(i); + + if (el.files.length == 0) { + el.files = dT.files; + //ocr(el) + $(el).change(); + + return false; + } + } + + } + $(document).ready(function () { $("#add_abnormality").appendTo($("label[for='id_abnormality']")); @@ -196,10 +214,6 @@ $(evt.target).removeClass("drop-target-active"); file_drop_number = evt.dataTransfer.files.length; - // Get all input elements - inputs = extendInputs(file_drop_number); - - console.log("drop inputs", inputs, evt); if (file_drop_number < 1) { toastr.warning(`Drop failed (no files), try again.`); @@ -207,32 +221,25 @@ toastr.info(`Loading ${file_drop_number} dropped image(s).`); } + // Get all input elements + inputs = extendInputs(file_drop_number); + + console.log("drop inputs", inputs, evt); + + // Loop through each dropped file and try to assign to an // input element [...evt.dataTransfer.files].forEach((f) => { - let dT = new DataTransfer(); - dT.clearData(); - dT.items.add(f); - for (let i = 0; i < inputs.length; i++) { - el = inputs.get(i); - console.log("drop el", el); + feedback = false; + if (evt.target.id == "feedback-drop-target") { + feedback = true; + arr = el.name.split("-"); + arr.splice(2, 1, "feedback_image"); + feedback_el_name = arr.join("-"); - if (el.files.length == 0) { - el.files = dT.files; - //ocr(el) - $(el).change(); - console.log("drop change") - - if (evt.target.id == "feedback-drop-target") { - arr = el.name.split("-"); - arr.splice(2, 1, "feedback_image"); - feedback_el_name = arr.join("-"); - - $(`[name=${feedback_el_name}]`).prop("checked", true); - } - return false; - } + $(`[name=${feedback_el_name}]`).prop("checked", true); } + addFile(f, feedback) }) // // If you want to use some of the dropped files