diff --git a/app/assets/javascripts/directory_files_input.js b/app/assets/javascripts/directory_files_input.js
new file mode 100644
index 0000000..728efc3
--- /dev/null
+++ b/app/assets/javascripts/directory_files_input.js
@@ -0,0 +1,9 @@
+$(document).on("turbolinks:load", function() {
+ $("#upload_directory_files").on('click', function(e){
+ const newFilesCount = $('input[name = "directory[files][]"][type = "hidden"]').length;
+
+ if (newFilesCount === 0){
+ e.preventDefault();
+ }
+ });
+});
\ No newline at end of file
diff --git a/app/views/directories/_file_form.html.erb b/app/views/directories/_file_form.html.erb
index f0257fd..bd067ca 100644
--- a/app/views/directories/_file_form.html.erb
+++ b/app/views/directories/_file_form.html.erb
@@ -3,6 +3,6 @@
<%= render "shared/files_dropzone_fields", form: form, directory: directory %>
<% end %>
- <%= form.submit t(".submit"), class: "btn btn-block btn-success", data: { disable_with: t("shared.disable_with") } %>
+ <%= form.submit t(".submit"), id: "upload_directory_files", class: "btn btn-block btn-success", data: { disable_with: t("shared.disable_with") } %>
<% end %>
diff --git a/spec/features/user_manages_project_directories_spec.rb b/spec/features/user_manages_project_directories_spec.rb
index 6ad5bc3..6af2448 100644
--- a/spec/features/user_manages_project_directories_spec.rb
+++ b/spec/features/user_manages_project_directories_spec.rb
@@ -51,6 +51,13 @@ RSpec.feature "User manages project custom folders", type: :feature do
expect(page).to have_content("UPLOAD NEW FILES")
+ expect do
+ click_button "Upload Files"
+ end.not_to raise_exception
+
+ expect(page).to have_content("UPLOAD NEW FILES")
+ expect(page).not_to have_content("The folder has been updated")
+
drop_file Rails.root.join(file_fixture("person_photo.png")), type: :dropzone
click_button "Upload Files"