Browse Source

add file

tags/vopendata0.1.2
e 5 years ago
parent
commit
ce1b0d50b7
3 changed files with 18 additions and 11 deletions
  1. +1
    -3
      routers/repo/dataset.go
  2. +1
    -1
      templates/repo/datasets/dataset.tmpl
  3. +16
    -7
      web_src/js/index.js

+ 1
- 3
routers/repo/dataset.go View File

@@ -82,17 +82,15 @@ func DatasetIndex(ctx *context.Context) {
ctx.Data["Attachments"] = attachments
ctx.Data["IsOwner"] = true
uuid := gouuid.NewV4().String()
log.Info(uuid)
tmpUrl, err := storage.Attachments.PresignedPutURL(models.AttachmentRelativePath(uuid))
if err != nil {
ctx.ServerError("PresignedPutURL", err)
}
log.Info(tmpUrl)
preUrl,err := url.QueryUnescape(tmpUrl)
if err != nil {
ctx.ServerError("QueryUnescape", err)
}
log.Info(preUrl)
ctx.Data["uuid"] = uuid
ctx.Data["url"] = preUrl
renderAttachmentSettings(ctx)


+ 1
- 1
templates/repo/datasets/dataset.tmpl View File

@@ -2,7 +2,7 @@
<div class="field required dataset-files">
<label>{{.i18n.Tr "dataset.file"}}</label>
<div class="files"></div>
<div class="ui dropzone" id="dataset" data-upload-url="{{.url}}" data-uuid="{{.uuid}}" data-accepts="{{.AttachmentAllowedTypes}}" data-remove-url="{{AppSubUrl}}/attachments/delete" data-csrf="{{.CsrfToken}}" dataset-id={{.dataset.ID}} data-max-file="100" data-dataset-id="{{.dataset.ID}}" data-max-size="{{.AttachmentMaxSize}}" data-default-message="{{.i18n.Tr "dropzone.default_message"}}" data-invalid-input-type="{{.i18n.Tr "dropzone.invalid_input_type"}}" data-file-too-big="{{.i18n.Tr "dropzone.file_too_big"}}" data-remove-file="{{.i18n.Tr "dropzone.remove_file"}}">
<div class="ui dropzone" id="dataset" data-upload-url="{{.url}}" data-uuid="{{.uuid}}" data-add-url="{{AppSubUrl}}/attachments/add" data-accepts="{{.AttachmentAllowedTypes}}" data-remove-url="{{AppSubUrl}}/attachments/delete" data-csrf="{{.CsrfToken}}" dataset-id={{.dataset.ID}} data-max-file="100" data-dataset-id="{{.dataset.ID}}" data-max-size="{{.AttachmentMaxSize}}" data-default-message="{{.i18n.Tr "dropzone.default_message"}}" data-invalid-input-type="{{.i18n.Tr "dropzone.invalid_input_type"}}" data-file-too-big="{{.i18n.Tr "dropzone.file_too_big"}}" data-remove-file="{{.i18n.Tr "dropzone.remove_file"}}">
</div>
</div>
</div>

+ 16
- 7
web_src/js/index.js View File

@@ -2396,6 +2396,7 @@ $(document).ready(async () => {

await createDropzone('#dataset', {
url: $dataset.data('upload-url'),
method:"put",
headers: {'X-Csrf-Token': csrf},
maxFiles: $dataset.data('max-file'),
maxFilesize: $dataset.data('max-size'),
@@ -2412,16 +2413,24 @@ $(document).ready(async () => {
formData.append('dataset_id', $dataset.data('dataset-id'));
});
this.on('success', (file, data) => {
/*
filenameDict[file.name] = data.uuid;
const input = $(`<input id="${data.uuid}" name="files" type="hidden">`).val(data.uuid);
var uuid = $dataset.data('uuid');
console.log(uuid);
console.log(file.name);
console.log(file.size);
filenameDict[file.name] = uuid;
const input = $(`<input id="${uuid}" name="files" type="hidden">`).val(uuid);
$('.files').append(input);
*/
console.log($dataset.data('upload-url'));
console.log($dataset.data('uuid'));
if ($dataset.data('add-url') && $dataset.data('csrf')) {
$.post($dataset.data('add-url'), {
uuid: uuid,
file_name: file.name,
size: file.size,
_csrf: $dataset.data('csrf')
});
}
});
this.on('queuecomplete', () => {
window.location.reload();
//window.location.reload();
});
this.on('removedfile', (file) => {
if (file.name in filenameDict) {


Loading…
Cancel
Save