From 60718965702e6048c034b154710b7781d4b41664 Mon Sep 17 00:00:00 2001 From: Brennon Loveless Date: Mon, 16 May 2016 17:06:59 -0600 Subject: [PATCH 1/2] File field type notifies when overwriting a file --- resources/js/upload.js | 11 +++++++++++ resources/lang/en/message.php | 1 + resources/views/upload/partials/body.twig | 1 + 3 files changed, 13 insertions(+) diff --git a/resources/js/upload.js b/resources/js/upload.js index 42325c1..3c47a65 100644 --- a/resources/js/upload.js +++ b/resources/js/upload.js @@ -19,7 +19,18 @@ $(function () { sending: function (file, xhr, formData) { formData.append('folder', element.data('folder')); }, + accept: function(file, done) { + $.getJSON('/admin/files/exists/' + element.data('folder') + '/' + file.name, function(data) { + if(data.exists) { + if(!confirm(file.name + " " + element.data('overwrite'))) { + dropzone.removeFile(file); + return; + } + } + done(); + }); + }, autoQueue: true, thumbnailWidth: 24, thumbnailHeight: 24, diff --git a/resources/lang/en/message.php b/resources/lang/en/message.php index dbacab8..9a7e4f2 100644 --- a/resources/lang/en/message.php +++ b/resources/lang/en/message.php @@ -6,6 +6,7 @@ 'choose_files' => 'Which files would you like to use?', 'no_files_selected' => 'No files selected.', 'no_uploads' => 'No files uploaded.', + 'overwrite' => 'has already been uploaded. Would you like to overwrite it?', 'uploading' => 'Uploading', 'loading' => 'Loading' ]; diff --git a/resources/views/upload/partials/body.twig b/resources/views/upload/partials/body.twig index b3536d6..3b1b00b 100644 --- a/resources/views/upload/partials/body.twig +++ b/resources/views/upload/partials/body.twig @@ -7,6 +7,7 @@ data-message="{{ trans('anomaly.field_type.files::message.upload') }}" data-loading="{{ trans('anomaly.field_type.files::message.loading') }}" data-uploading="{{ trans('anomaly.field_type.files::message.uploading') }}" + data-overwrite="{{ trans('anomaly.field_type.file::message.overwrite') }}" data-max-parallel="{{ setting_value('anomaly.module.files::max_parallel_uploads', 3) }}" data-allowed="{{ folder.allowed_types.value ? '.' ~ folder.allowed_types.value|join(',.') }}"> From 04d96a9b932560c30e60814a23e4e9f5d40db710 Mon Sep 17 00:00:00 2001 From: Brennon Loveless Date: Mon, 16 May 2016 17:11:53 -0600 Subject: [PATCH 2/2] Disable dropzone autodiscover --- resources/js/upload.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/resources/js/upload.js b/resources/js/upload.js index 3c47a65..c598c6b 100644 --- a/resources/js/upload.js +++ b/resources/js/upload.js @@ -1,3 +1,6 @@ +// Disabling autoDiscover, otherwise Dropzone will try to attach twice. +Dropzone.autoDiscover = false; + $(function () { var uploaded = [];