From 1f0efdc0fb67f3ed3b7c4a0c031480fbd41b95c0 Mon Sep 17 00:00:00 2001 From: razvanMiu Date: Tue, 11 May 2021 13:21:35 +0300 Subject: [PATCH] Update --- .../Blocks/SiteBlocks/BatConclusions.jsx | 21 +++++++++++++------ .../RegulatoryBATConclusions/View.jsx | 13 +++++++----- .../manage/Blocks/SiteTableau/View.jsx | 8 +++++-- 3 files changed, 29 insertions(+), 13 deletions(-) diff --git a/src/components/manage/Blocks/SiteBlocks/BatConclusions.jsx b/src/components/manage/Blocks/SiteBlocks/BatConclusions.jsx index 3c1be9b1..9242055c 100644 --- a/src/components/manage/Blocks/SiteBlocks/BatConclusions.jsx +++ b/src/components/manage/Blocks/SiteBlocks/BatConclusions.jsx @@ -8,6 +8,15 @@ import infoSVG from '@plone/volto/icons/info.svg'; import rightSVG from '@plone/volto/icons/right-key.svg'; import downSVG from '@plone/volto/icons/down-key.svg'; +const hasConclusions = (data, installations) => { + if (!installations.length) return false; + for (let i = 0; i < installations.length; i++) { + const conclusions = Object.keys(data[installations[i]] || {}); + if (conclusions.length) return true; + } + return false; +}; + const View = (props) => { const [activeAels, setActiveAels] = React.useState({}); const { data = {}, installationsNth = {}, entity = '' } = props; @@ -18,7 +27,7 @@ const View = (props) => {

BAT conclusions

@@ -33,12 +42,12 @@ const View = (props) => { />
- {installations.length ? ( + {hasConclusions(data, installations) ? (
{installations.map((installation) => { const conclusions = Object.keys(data[installation] || {}).sort(); - return ( + return conclusions.length ? (
{ }) : ''}
+ ) : ( + '' ); })}
) : ( -

- No information provided about competent authority -

+

No information provided about bat conclusions

)} ); diff --git a/src/components/manage/Blocks/SiteBlocks/RegulatoryBATConclusions/View.jsx b/src/components/manage/Blocks/SiteBlocks/RegulatoryBATConclusions/View.jsx index 9e5e4be8..83eb5758 100644 --- a/src/components/manage/Blocks/SiteBlocks/RegulatoryBATConclusions/View.jsx +++ b/src/components/manage/Blocks/SiteBlocks/RegulatoryBATConclusions/View.jsx @@ -43,13 +43,16 @@ const View = (props) => { facility: provider_data['facilityInspireId'][index], }; } - if (!newBatConclusions[installation][batConclusionName]) { + if ( + batConclusionName && + !newBatConclusions[installation][batConclusionName] + ) { newBatConclusions[installation][batConclusionName] = []; + keys.forEach((key) => { + obj[key] = provider_data[key][index]; + }); + newBatConclusions[installation][batConclusionName].push({ ...obj }); } - keys.forEach((key) => { - obj[key] = provider_data[key][index]; - }); - newBatConclusions[installation][batConclusionName].push({ ...obj }); }); Object.keys(newBatConclusions) diff --git a/src/components/manage/Blocks/SiteTableau/View.jsx b/src/components/manage/Blocks/SiteTableau/View.jsx index 1fe08e5e..e80d501b 100644 --- a/src/components/manage/Blocks/SiteTableau/View.jsx +++ b/src/components/manage/Blocks/SiteTableau/View.jsx @@ -24,6 +24,7 @@ const getDevice = (config, width) => { const View = (props) => { const [error, setError] = React.useState(null); + const [loaded, setLoaded] = React.useState(false); const [mounted, setMounted] = React.useState(false); const [extraFilters, setExtraFilters] = React.useState({}); const { data = {}, query = {}, screen = {}, provider_data = null } = props; @@ -80,8 +81,8 @@ const View = (props) => { )} {!disabled ? ( <> - {title ?

{title}

: ''} - {description ? ( + {loaded && title ?

{title}

: ''} + {loaded && description ? (

{description}

) : ( '' @@ -92,7 +93,9 @@ const View = (props) => { extraFilters={extraFilters} extraOptions={{ device }} error={error} + loaded={loaded} setError={setError} + setLoaded={setLoaded} version={version} url={url} /> @@ -112,6 +115,7 @@ export default compose( ...(qs.parse(state.router.location?.search?.replace('?', '')) || {}), ...(state.discodata_query?.search || {}), }, + tableau: state.tableau, screen: state.screen, })), )(connectBlockToProviderData(View));