diff --git a/src/views/gutenberg-blocks/blocks/item-submission-form/block.json b/src/views/gutenberg-blocks/blocks/item-submission-form/block.json
index db26019e2..4128af753 100644
--- a/src/views/gutenberg-blocks/blocks/item-submission-form/block.json
+++ b/src/views/gutenberg-blocks/blocks/item-submission-form/block.json
@@ -94,8 +94,8 @@
"default": "#187181"
},
"enabledMetadata": {
- "type": "array",
- "default": []
+ "type": "object",
+ "default": {}
},
"collectionMetadata": {
"type": "array",
diff --git a/src/views/gutenberg-blocks/blocks/item-submission-form/deprecated.js b/src/views/gutenberg-blocks/blocks/item-submission-form/deprecated.js
index fe80688b9..923f1965a 100644
--- a/src/views/gutenberg-blocks/blocks/item-submission-form/deprecated.js
+++ b/src/views/gutenberg-blocks/blocks/item-submission-form/deprecated.js
@@ -2,6 +2,253 @@ const { __ } = wp.i18n;
const { RichText, useBlockProps } = (tainacan_blocks.wp_version < '5.2' ? wp.editor : wp.blockEditor );
export default [
+ /* Deprecated in version 0.20.7 due to the change of enabledMetadata from array to object with IDs */
+ {
+ migrate( attributes ) {
+ if ( Array.isArray(attributes.enabledMetadata) ) {
+ attributes.enabledMetadata = {};
+ attributes.collectionMetadata.forEach( metadatum => {
+ attributes.enabledMetadata[ metadatum.id ] = true;
+ });
+ }
+ console.log('migrated to ' + attributes.enabledMetadata)
+ return attributes;
+ },
+ "attributes": {
+ "collectionId": {
+ "type": "string",
+ "default": ""
+ },
+ "isCollectionModalOpen": {
+ "type": "boolean",
+ "default": false
+ },
+ "hideFileModalButton": {
+ "type": "boolean",
+ "default": false
+ },
+ "hideTextModalButton": {
+ "type": "boolean",
+ "default": false
+ },
+ "hideLinkModalButton": {
+ "type": "boolean",
+ "default": false
+ },
+ "hideThumbnailSection": {
+ "type": "boolean",
+ "default": false
+ },
+ "hideAttachmentsSection": {
+ "type": "boolean",
+ "default": false
+ },
+ "hideHelpButtons": {
+ "type": "boolean",
+ "default": false
+ },
+ "hideMetadataTypes": {
+ "type": "boolean",
+ "default": false
+ },
+ "showAllowCommentsSection": {
+ "type": "boolean",
+ "default": false
+ },
+ "hideCollapses": {
+ "type": "boolean",
+ "default": false
+ },
+ "backgroundColor": {
+ "type": "string",
+ "default": "rgba(255,255,255,0)"
+ },
+ "baseFontSize": {
+ "type": "number",
+ "default": 16
+ },
+ "inputColor": {
+ "type": "string",
+ "default": "#1d1d1d"
+ },
+ "inputBackgroundColor": {
+ "type": "string",
+ "default": "#ffffff"
+ },
+ "inputBorderColor": {
+ "type": "string",
+ "default": "#dbdbdb"
+ },
+ "labelColor": {
+ "type": "string",
+ "default": "#373839"
+ },
+ "infoColor": {
+ "type": "string",
+ "default": "#505253"
+ },
+ "primaryColor": {
+ "type": "string",
+ "default": "#d9eced"
+ },
+ "secondaryColor": {
+ "type": "string",
+ "default": "#187181"
+ },
+ "enabledMetadata": {
+ "type": "array",
+ "default": []
+ },
+ "collectionMetadata": {
+ "type": "array",
+ "default": []
+ },
+ "isLoadingCollectionMetadata": {
+ "type": "boolean",
+ "default": false
+ },
+ "sentFormHeading": {
+ "type": "string",
+ "default": "Form submitted!"
+ },
+ "sentFormMessage": {
+ "type": "string",
+ "default": "Thank you. Your item was submitted to the collection."
+ },
+ "documentSectionLabel": {
+ "type": "string",
+ "default": "Document"
+ },
+ "attachmentsSectionLabel": {
+ "type": "string",
+ "default": "Attachments"
+ },
+ "thumbnailSectionLabel": {
+ "type": "string",
+ "default": "Thumbnail"
+ },
+ "metadataSectionLabel": {
+ "type": "string",
+ "default": "Metadata"
+ },
+ "showItemLinkButton": {
+ "type": "boolean",
+ "default": false
+ },
+ "itemLinkButtonLabel": {
+ "type": "string",
+ "default": "Go to the item page"
+ },
+ "helpInfoBellowLabel": {
+ "type": "boolean",
+ "default": false
+ },
+ "showTermsAgreementCheckbox": {
+ "type": "boolean",
+ "default": false
+ },
+ "termsAgreementMessage": {
+ "type": "string",
+ "default": "I agree to submit this item information."
+ },
+ "isLayoutSteps": {
+ "type": "boolean",
+ "default": false
+ }
+ },
+ save: function({ attributes }) {
+ const {
+ collectionId,
+ backgroundColor,
+ hideFileModalButton,
+ hideTextModalButton,
+ hideLinkModalButton,
+ hideThumbnailSection,
+ hideAttachmentsSection,
+ showAllowCommentsSection,
+ hideHelpButtons,
+ hideMetadataTypes,
+ hideCollapses,
+ documentSectionLabel,
+ thumbnailSectionLabel,
+ attachmentsSectionLabel,
+ metadataSectionLabel,
+ baseFontSize,
+ inputColor,
+ inputBackgroundColor,
+ inputBorderColor,
+ labelColor,
+ infoColor,
+ primaryColor,
+ secondaryColor,
+ enabledMetadata,
+ sentFormHeading,
+ sentFormMessage,
+ showItemLinkButton,
+ itemLinkButtonLabel,
+ helpInfoBellowLabel,
+ showTermsAgreementCheckbox,
+ termsAgreementMessage,
+ isLayoutSteps
+ } = attributes;
+
+ const blockProps = useBlockProps.save();
+ const className = blockProps.className;
+
+ let termsAgreementMessageHTML =