From 7ebe65ba5f86758cceffecb79ba703dd53c39489 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sami=20M=C3=A4kinen?= Date: Tue, 21 May 2024 18:12:34 +0300 Subject: [PATCH 1/2] Fix service metadata before saving --- .../view/AdminLayerForm/AdditionalTabPane/MetadataId.jsx | 2 +- .../AdminLayerForm/AdditionalTabPane/ServiceMetadata.jsx | 2 +- .../view/AdminLayerForm/AdminLayerFormHandler.js | 9 ++++++++- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/bundles/admin/admin-layereditor/view/AdminLayerForm/AdditionalTabPane/MetadataId.jsx b/bundles/admin/admin-layereditor/view/AdminLayerForm/AdditionalTabPane/MetadataId.jsx index 7f450ef0e6..53616832dc 100644 --- a/bundles/admin/admin-layereditor/view/AdminLayerForm/AdditionalTabPane/MetadataId.jsx +++ b/bundles/admin/admin-layereditor/view/AdminLayerForm/AdditionalTabPane/MetadataId.jsx @@ -21,7 +21,7 @@ export const MetadataId = ({ layer, controller }) => { {renderButton && - controller.showLayerMetadata(layer.id)}/> + controller.showLayerMetadata(layer.isNew ? layer.metadataid : layer.id)}/> } {hasHandler && - controller.showLayerMetadata(layerId)}/> + controller.showLayerMetadata(layerId || metadataUuid)}/> } ); diff --git a/bundles/admin/admin-layereditor/view/AdminLayerForm/AdminLayerFormHandler.js b/bundles/admin/admin-layereditor/view/AdminLayerForm/AdminLayerFormHandler.js index e8f15495cd..a8ad3caa7a 100644 --- a/bundles/admin/admin-layereditor/view/AdminLayerForm/AdminLayerFormHandler.js +++ b/bundles/admin/admin-layereditor/view/AdminLayerForm/AdminLayerFormHandler.js @@ -1178,8 +1178,15 @@ class UIHandler extends StateHandler { } showLayerMetadata (layerId) { + // this works even when the layer hasn't been saved yet + let payload = { uuid: layerId }; + if (typeof layerId === 'number') { + // this works only when layer has been saved + // (and supports the attributes override for metadata service url) + payload = { layerId }; + } Oskari.getSandbox().postRequestByName('catalogue.ShowMetadataRequest', [ - { layerId: layerId } + payload ]); } From 18c13ca34f4a8849f14b1343149cc81fea99a200 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sami=20M=C3=A4kinen?= Date: Tue, 21 May 2024 18:19:26 +0300 Subject: [PATCH 2/2] Layer id is not know before saving --- .../view/AdminLayerForm/AdditionalTabPane/ServiceMetadata.jsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bundles/admin/admin-layereditor/view/AdminLayerForm/AdditionalTabPane/ServiceMetadata.jsx b/bundles/admin/admin-layereditor/view/AdminLayerForm/AdditionalTabPane/ServiceMetadata.jsx index 45dd698b7a..124d8f41f0 100644 --- a/bundles/admin/admin-layereditor/view/AdminLayerForm/AdditionalTabPane/ServiceMetadata.jsx +++ b/bundles/admin/admin-layereditor/view/AdminLayerForm/AdditionalTabPane/ServiceMetadata.jsx @@ -36,5 +36,5 @@ ServiceMetadata.propTypes = { hasHandler: PropTypes.bool.isRequired, capabilities: PropTypes.object.isRequired, controller: PropTypes.instanceOf(Controller).isRequired, - layerId: PropTypes.number.isRequired + layerId: PropTypes.number };