From 398237b444d551d89e83a0c88ba366487266390d Mon Sep 17 00:00:00 2001 From: nguyenntph Date: Thu, 6 Jan 2022 22:57:47 +0700 Subject: [PATCH 1/9] Update upload file --- src/js/Alpaca.js | 1 + src/js/fields/advanced/UploadField.js | 9 +++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/js/Alpaca.js b/src/js/Alpaca.js index 8ae860355..8afa42577 100644 --- a/src/js/Alpaca.js +++ b/src/js/Alpaca.js @@ -2048,6 +2048,7 @@ // Just use a URL field for now. Set up the uploader later. schema.properties = schema.oneOf[1].properties; schema.type = 'object'; + options = schema.properties.url; delete schema.oneOf; } diff --git a/src/js/fields/advanced/UploadField.js b/src/js/fields/advanced/UploadField.js index 954212ebc..ca50121bc 100644 --- a/src/js/fields/advanced/UploadField.js +++ b/src/js/fields/advanced/UploadField.js @@ -1114,8 +1114,9 @@ var self = this; // disable select files button - $(self.control).find(".btn.fileinput-button").prop("disabled", true); - $(self.control).find(".btn.fileinput-button").attr("disabled", "disabled"); + $(self.control).find(".btn.fileinput-button input[type=file]").prop("disabled", true); + $(self.control).find(".btn.fileinput-button input[type=file]").attr("disabled", "disabled"); + // hide dropzone message $(self.control).find(".fileupload-active-zone p.dropzone-message").css("display", "none"); @@ -1123,8 +1124,8 @@ if (enabled) { // enable select files button - $(self.control).find(".btn.fileinput-button").prop("disabled", false); - $(self.control).find(".btn.fileinput-button").attr("disabled", null); + $(self.control).find(".btn.fileinput-button input[type=file]").prop("disabled", false); + $(self.control).find(".btn.fileinput-button input[type=file]").attr("disabled", null); // show dropzone message $(self.control).find(".fileupload-active-zone p.dropzone-message").css("display", "block"); From d68285a959a1a9d1eb66802c423e84bf290b525a Mon Sep 17 00:00:00 2001 From: nguyenntph Date: Thu, 13 Jan 2022 00:13:45 +0700 Subject: [PATCH 2/9] Reload UI state when set data via form --- src/js/fields/advanced/UploadField.js | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/js/fields/advanced/UploadField.js b/src/js/fields/advanced/UploadField.js index ca50121bc..c35d42574 100644 --- a/src/js/fields/advanced/UploadField.js +++ b/src/js/fields/advanced/UploadField.js @@ -982,8 +982,12 @@ return value; }, - setValue: function(value) + setValue: function(value, internal) { + if (typeof internal === 'undefined') { + internal = false; + } + if (!value) { this.data = []; @@ -1000,6 +1004,10 @@ } } + if (internal == false) { + this.reload(function() {}); + } + this.refreshUIState(); this.updateObservable(); this.triggerUpdate(); @@ -1024,7 +1032,7 @@ if (self.isArrayType()) { - self.setValue(array); + self.setValue(array, true); } else if (self.isObjectType()) { @@ -1033,7 +1041,7 @@ val = array[0]; } - self.setValue(val); + self.setValue(val, true); } }, From c79f8cedb3e32d4fe0a7e1ee77c82a4a09fd0c36 Mon Sep 17 00:00:00 2001 From: nguyenntph Date: Fri, 14 Jan 2022 23:16:28 +0700 Subject: [PATCH 3/9] Use url as default thumbnail urls --- src/js/fields/advanced/UploadField.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/js/fields/advanced/UploadField.js b/src/js/fields/advanced/UploadField.js index c35d42574..1dd2adac9 100644 --- a/src/js/fields/advanced/UploadField.js +++ b/src/js/fields/advanced/UploadField.js @@ -871,7 +871,7 @@ "name": descriptor.name, "size": descriptor.size, "url": descriptor.url, - "thumbnailUrl":descriptor.thumbnailUrl, + "thumbnailUrl":descriptor.thumbnailUrl || descriptor.url, "deleteUrl": descriptor.deleteUrl, "deleteType": descriptor.deleteType }; From e83a6861c0dd4b35fca65b258310f886f801b8e9 Mon Sep 17 00:00:00 2001 From: nguyenntph Date: Thu, 20 Jan 2022 22:07:36 +0700 Subject: [PATCH 4/9] Update uploader layout --- src/css/alpaca-bootstrap.css | 10 ++++++-- .../bootstrap-display/control-upload.html | 25 ++++++++++--------- .../bootstrap-edit/control-upload.html | 24 +++++++++--------- 3 files changed, 33 insertions(+), 26 deletions(-) diff --git a/src/css/alpaca-bootstrap.css b/src/css/alpaca-bootstrap.css index 006960da8..5b8f7e4cf 100644 --- a/src/css/alpaca-bootstrap.css +++ b/src/css/alpaca-bootstrap.css @@ -225,8 +225,10 @@ legend.alpaca-container-label /** FIElDS **/ .alpaca-field.alpaca-field-upload .fileupload-active-zone { - margin-top: 50px; - margin-bottom: 50px; + margin-top: 0; + margin-bottom: 0; + padding-left: 0; + padding-right: 0; } .alpaca-field.alpaca-field-upload .template-download TD.error { @@ -251,6 +253,10 @@ legend.alpaca-container-label font-size: 16px; text-align: left; } +.alpaca-field.alpaca-field-upload .alpaca-fileupload-chooserow +{ + margin-bottom: 0; +} .alpaca-field.alpaca-field-address .alpaca-field-address-mapcanvas { diff --git a/src/templates/bootstrap-display/control-upload.html b/src/templates/bootstrap-display/control-upload.html index 7a03c74e7..54c2d6f89 100644 --- a/src/templates/bootstrap-display/control-upload.html +++ b/src/templates/bootstrap-display/control-upload.html @@ -2,18 +2,6 @@
-
-
-
- - - {{chooseButtonLabel}} - - - -
-
-
@@ -45,6 +33,19 @@ + +
+
+
+ + + {{chooseButtonLabel}} + + + +
+
+
diff --git a/src/templates/bootstrap-edit/control-upload.html b/src/templates/bootstrap-edit/control-upload.html index 43b2d7611..00bbba9b2 100644 --- a/src/templates/bootstrap-edit/control-upload.html +++ b/src/templates/bootstrap-edit/control-upload.html @@ -2,18 +2,6 @@
-
-
-
- - - {{chooseButtonLabel}} - - - -
-
-
@@ -45,6 +33,18 @@ +
+
+
+ + + {{chooseButtonLabel}} + + + +
+
+
From 1c44e459706ba46e9758488f5f7eacd8f8ae730e Mon Sep 17 00:00:00 2001 From: nguyenntph Date: Thu, 20 Jan 2022 22:17:45 +0700 Subject: [PATCH 5/9] Action align center --- .../bootstrap-display/control-upload-partial-download.html | 2 +- src/templates/bootstrap-display/control-upload.html | 2 +- .../bootstrap-edit/control-upload-partial-download.html | 2 +- src/templates/bootstrap-edit/control-upload.html | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/templates/bootstrap-display/control-upload-partial-download.html b/src/templates/bootstrap-display/control-upload-partial-download.html index e4111ed9b..96bdeb830 100644 --- a/src/templates/bootstrap-display/control-upload-partial-download.html +++ b/src/templates/bootstrap-display/control-upload-partial-download.html @@ -27,7 +27,7 @@ {{/if}} - - + {{/if}} diff --git a/src/templates/bootstrap-edit/control-upload-partial-download.html b/src/templates/bootstrap-edit/control-upload-partial-download.html index e4111ed9b..96bdeb830 100644 --- a/src/templates/bootstrap-edit/control-upload-partial-download.html +++ b/src/templates/bootstrap-edit/control-upload-partial-download.html @@ -27,7 +27,7 @@ {{/if}} - - + {{/if}} From 8f5f5fc724023f4ef04af233a0399a4440f6e58f Mon Sep 17 00:00:00 2001 From: nguyenntph Date: Thu, 20 Jan 2022 23:08:58 +0700 Subject: [PATCH 6/9] Use properties from x-uploader --- src/js/Alpaca.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/js/Alpaca.js b/src/js/Alpaca.js index 8afa42577..88bdcf171 100644 --- a/src/js/Alpaca.js +++ b/src/js/Alpaca.js @@ -2042,16 +2042,18 @@ schema.oneOf[1].type === 'object' && schema.oneOf[1].properties && schema.oneOf[1].properties.url && + schema.oneOf[1]['x-uploader'] && (schema.oneOf[2] == null || schema.oneOf[2].type == 'null') //schema.properties.oneOf[2].uploaded_image_id ) { - // Just use a URL field for now. Set up the uploader later. - schema.properties = schema.oneOf[1].properties; + // Uploader attributes + schema.properties = schema.oneOf[1]['x-uploader']; schema.type = 'object'; options = schema.properties.url; delete schema.oneOf; } + if (!options.type) { // if nothing passed in, we can try to make a guess based on the type of data From 52599b97b6e2d956b5f7e34e8825a8f584f24623 Mon Sep 17 00:00:00 2001 From: nguyenntph Date: Thu, 20 Jan 2022 23:29:31 +0700 Subject: [PATCH 7/9] Remove margin + remove unused fallback --- src/css/alpaca-fields.css | 1 - src/js/fields/advanced/UploadField.js | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/css/alpaca-fields.css b/src/css/alpaca-fields.css index 52194db83..96ad69487 100644 --- a/src/css/alpaca-fields.css +++ b/src/css/alpaca-fields.css @@ -98,7 +98,6 @@ .alpaca-fileupload-container .row { - margin-bottom: 10px; } .alpaca-fileupload-well diff --git a/src/js/fields/advanced/UploadField.js b/src/js/fields/advanced/UploadField.js index 1dd2adac9..c35d42574 100644 --- a/src/js/fields/advanced/UploadField.js +++ b/src/js/fields/advanced/UploadField.js @@ -871,7 +871,7 @@ "name": descriptor.name, "size": descriptor.size, "url": descriptor.url, - "thumbnailUrl":descriptor.thumbnailUrl || descriptor.url, + "thumbnailUrl":descriptor.thumbnailUrl, "deleteUrl": descriptor.deleteUrl, "deleteType": descriptor.deleteType }; From 71b0ba1fe2e2da0480e09af2d4cb0c6dca94bd20 Mon Sep 17 00:00:00 2001 From: nguyenntph Date: Thu, 20 Jan 2022 23:34:05 +0700 Subject: [PATCH 8/9] Re-add fallback --- src/js/fields/advanced/UploadField.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/js/fields/advanced/UploadField.js b/src/js/fields/advanced/UploadField.js index c35d42574..c242196f4 100644 --- a/src/js/fields/advanced/UploadField.js +++ b/src/js/fields/advanced/UploadField.js @@ -758,7 +758,7 @@ "name": file.name, "size": file.size, "url": file.url, - "thumbnailUrl": file.thumbnailUrl + "thumbnailUrl": file.thumbnailUrl || file.url }; // substitute any tokens @@ -834,7 +834,7 @@ "name": file.name, "size": file.size, "url": file.url, - "thumbnailUrl":file.thumbnailUrl, + "thumbnailUrl":file.thumbnailUrl || file.url, "deleteUrl": file.deleteUrl, "deleteType": file.deleteType }; @@ -871,7 +871,7 @@ "name": descriptor.name, "size": descriptor.size, "url": descriptor.url, - "thumbnailUrl":descriptor.thumbnailUrl, + "thumbnailUrl":descriptor.thumbnailUrl || descriptor.url, "deleteUrl": descriptor.deleteUrl, "deleteType": descriptor.deleteType }; From 8bdfdc552d75238582ee76e5659279bccbb4af64 Mon Sep 17 00:00:00 2001 From: nguyenntph Date: Tue, 1 Feb 2022 16:03:15 +0700 Subject: [PATCH 9/9] Update styling --- src/css/alpaca-bootstrap.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/css/alpaca-bootstrap.css b/src/css/alpaca-bootstrap.css index 5b8f7e4cf..cdfb130b6 100644 --- a/src/css/alpaca-bootstrap.css +++ b/src/css/alpaca-bootstrap.css @@ -255,7 +255,7 @@ legend.alpaca-container-label } .alpaca-field.alpaca-field-upload .alpaca-fileupload-chooserow { - margin-bottom: 0; + margin-bottom: 10px; } .alpaca-field.alpaca-field-address .alpaca-field-address-mapcanvas
{{file.size}} + {{#if buttons}} {{#each buttons}} {{#if isDelete}} diff --git a/src/templates/bootstrap-display/control-upload.html b/src/templates/bootstrap-display/control-upload.html index 54c2d6f89..7bf7323dc 100644 --- a/src/templates/bootstrap-display/control-upload.html +++ b/src/templates/bootstrap-display/control-upload.html @@ -16,7 +16,7 @@ Name Size ActionsActions
{{file.size}} + {{#if buttons}} {{#each buttons}} {{#if isDelete}} diff --git a/src/templates/bootstrap-edit/control-upload.html b/src/templates/bootstrap-edit/control-upload.html index 00bbba9b2..4470306d5 100644 --- a/src/templates/bootstrap-edit/control-upload.html +++ b/src/templates/bootstrap-edit/control-upload.html @@ -16,7 +16,7 @@ Name Size ActionsActions