From 2da9ba820b1f14e2fa9a92a96adacde133c5d865 Mon Sep 17 00:00:00 2001 From: Shariq Ansari Date: Tue, 9 Jan 2024 15:45:14 +0530 Subject: [PATCH] fix: added validation if upload is clicked without uploading file --- frappe/public/js/frappe/file_uploader/FileUploader.vue | 10 +++++++++- .../js/frappe/file_uploader/file_uploader.bundle.js | 4 +--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/frappe/public/js/frappe/file_uploader/FileUploader.vue b/frappe/public/js/frappe/file_uploader/FileUploader.vue index b4725da83d..5bfcab8148 100644 --- a/frappe/public/js/frappe/file_uploader/FileUploader.vue +++ b/frappe/public/js/frappe/file_uploader/FileUploader.vue @@ -473,7 +473,7 @@ function check_restrictions(file) { return is_correct_type && valid_file_size; } -function upload_files() { +function upload_files(dialog) { if (show_file_browser.value) { return upload_via_file_browser(); } @@ -483,6 +483,14 @@ function upload_files() { if (props.as_dataurl) { return return_as_dataurl(); } + if (!files.value.length) { + frappe.msgprint(__("Please select a file first.")); + return Promise.reject(); + } + + dialog?.get_primary_btn().prop("disabled", true); + dialog?.get_secondary_btn().prop("disabled", true); + return frappe.run_serially(files.value.map((file, i) => () => upload_file(file, i))); } function upload_via_file_browser() { diff --git a/frappe/public/js/frappe/file_uploader/file_uploader.bundle.js b/frappe/public/js/frappe/file_uploader/file_uploader.bundle.js index 0e63eef469..b886c7703d 100644 --- a/frappe/public/js/frappe/file_uploader/file_uploader.bundle.js +++ b/frappe/public/js/frappe/file_uploader/file_uploader.bundle.js @@ -113,9 +113,7 @@ class FileUploader { } upload_files() { - this.dialog && this.dialog.get_primary_btn().prop("disabled", true); - this.dialog && this.dialog.get_secondary_btn().prop("disabled", true); - return this.uploader.upload_files(); + return this.uploader.upload_files(this.dialog); } make_dialog(title) {