From 84602a404ccab628a73b7d3d2c88ae5427e4d004 Mon Sep 17 00:00:00 2001 From: colorfulberry Date: Thu, 21 May 2020 17:38:28 +0800 Subject: [PATCH] feat: update tmpl --- templates/datasets/create.tmpl | 3 +- web_src/js/index.js | 60 ++++++++++++++++++++++++++++++++++ web_src/less/_dataset.less | 49 +++++++++++++++++++++++++++ 3 files changed, 111 insertions(+), 1 deletion(-) diff --git a/templates/datasets/create.tmpl b/templates/datasets/create.tmpl index 8af7cddc2..cfb1ad33e 100644 --- a/templates/datasets/create.tmpl +++ b/templates/datasets/create.tmpl @@ -110,7 +110,8 @@
-
+
+

diff --git a/web_src/js/index.js b/web_src/js/index.js index f7b4ef24d..249cdaad1 100644 --- a/web_src/js/index.js +++ b/web_src/js/index.js @@ -2305,6 +2305,66 @@ $(document).ready(async () => { }); } + // dataset Dropzone + const $dataset = $('#dataset'); + if ($dataset.length > 0) { + const filenameDict = {}; + let previewTemplate = ''; + previewTemplate += '
\n '; + previewTemplate += '
\n '; + previewTemplate += '
'; + previewTemplate += ' '; + previewTemplate += '
\n '; + previewTemplate += '
\n '; + previewTemplate += ' \n '; + previewTemplate += '
\n '; + previewTemplate += '
'; + previewTemplate += '
\n '; + previewTemplate += '
\n '; + previewTemplate += '
'; + previewTemplate += ' 上传成功'; + previewTemplate += '
\n '; + previewTemplate += '
'; + previewTemplate += ' 上传失败'; + previewTemplate += '
\n '; + previewTemplate += '
'; + previewTemplate += ' '; + previewTemplate += '
\n'; + previewTemplate += '
'; + + await createDropzone('#dataset', { + url: $dataset.data('upload-url'), + headers: {'X-Csrf-Token': csrf}, + maxFiles: $dataset.data('max-file'), + maxFilesize: $dataset.data('max-size'), + acceptedFiles: ($dataset.data('accepts') === '*/*') ? null : $dataset.data('accepts'), + addRemoveLinks: true, + dictDefaultMessage: $dataset.data('default-message'), + dictInvalidFileType: $dataset.data('invalid-input-type'), + dictFileTooBig: $dataset.data('file-too-big'), + dictRemoveFile: $dataset.data('remove-file'), + previewTemplate, + init() { + this.on('success', (file, data) => { + filenameDict[file.name] = data.uuid; + const input = $(``).val(data.uuid); + $('.files').append(input); + }); + this.on('removedfile', (file) => { + if (file.name in filenameDict) { + $(`#${filenameDict[file.name]}`).remove(); + } + if ($dataset.data('remove-url') && $dataset.data('csrf')) { + $.post($dataset.data('remove-url'), { + file: filenameDict[file.name], + _csrf: $dataset.data('csrf') + }); + } + }); + }, + }); + } + // Helpers. $('.delete-button').on('click', showDeletePopup); $('.add-all-button').on('click', showAddAllPopup); diff --git a/web_src/less/_dataset.less b/web_src/less/_dataset.less index 99d89b6b0..c3072696e 100644 --- a/web_src/less/_dataset.less +++ b/web_src/less/_dataset.less @@ -2,5 +2,54 @@ padding-top: 15px; .dataset-files { margin: 0 30px !important; + #dataset { + .dz-preview { + border-bottom: 1px solid rgb(218, 220, 224); + min-height: 0; + } + .dz-preview.dz-file-preview.dz-processing { + display: flex; + align-items: center; + .dz-details { + display: flex; + padding: 0 0 10px 0; + min-width: 60%; + max-width: 60%; + position: relative; + } + .dz-success-mark { + z-index: 0; + position: relative; + top: 0; + left: auto; + color: green; + margin: 0 16px; + } + .dz-error-mark { + z-index: 0; + position: relative; + top: 0; + left: auto; + color: red; + margin: 0 16px; + } + .bar { + background: #21ba45; + } + .dz-progress { + left: 4px; + background: grey; + width: 70%; + top: 20px; + margin: 0; + } + .dz-file { + margin-bottom: auto; + } + } + .dz-preview .dz-error-message { + top: 30px; + } + } } } \ No newline at end of file