diff --git a/src/assets/scss/components/formBuilder.scss b/src/assets/scss/components/formBuilder.scss index db9b8ad..2b82558 100644 --- a/src/assets/scss/components/formBuilder.scss +++ b/src/assets/scss/components/formBuilder.scss @@ -241,9 +241,13 @@ .formElementSettings__repeaterItem { display: grid; - grid-template-columns: 4.5fr 2.4fr 1fr 1.4fr 0.7fr; + grid-template-columns: 1fr; gap: 12px; + &.tableRow { + grid-template-columns: 4.5fr 2.4fr 1fr 1.4fr 0.7fr; + } + > div { display: flex; align-items: center; diff --git a/src/components/FormField/components/Table/RenderTable/index.js b/src/components/FormField/components/Table/RenderTable/index.js index c925bcd..f376913 100644 --- a/src/components/FormField/components/Table/RenderTable/index.js +++ b/src/components/FormField/components/Table/RenderTable/index.js @@ -7,7 +7,7 @@ import { isEmpty } from 'ramda'; import DefaultCell from './components/DefaultCell'; import LastRowCell from './components/LastRowCell'; -const RenderTable = ({ rowsData, columnsCfg, lastRowCfg, setRowsFn, disabled }) => { +const RenderTable = ({ rowsData = [], columnsCfg, lastRowCfg, setRowsFn, disabled }) => { const table = useReactTable({ data: rowsData, columns: columnsCfg, diff --git a/src/components/FormField/components/Table/index.js b/src/components/FormField/components/Table/index.js index 02d33be..62d71de 100644 --- a/src/components/FormField/components/Table/index.js +++ b/src/components/FormField/components/Table/index.js @@ -122,13 +122,13 @@ const Table = ({ useEffect(() => { const stateFieldData = pathOr([], ['stateFieldData'], tableColumns); - const obj = stateFieldData + /*const obj = stateFieldData .reduce((acc, cur) => { acc[cur.name] = '' return acc; - }, {}); - let rowsData = pathOr([obj], ['rowsData'], tableColumns); - rowsData = isEmpty(rowsData) ? [obj] : rowsData; + }, {});*/ + let rowsData = pathOr([], ['rowsData'], tableColumns); + //rowsData = isEmpty(rowsData) ? [obj] : rowsData; setColumnsCfg(stateFieldData); setRowsCfg(rowsData); @@ -169,7 +169,8 @@ const Table = ({ {label}{config.required || config.isRequired || (config.validate && config.validate.nonEmptyTables) ? * : null} - {rows ? { + const [hours, minutes, seconds = 0] = timeStr.split(':').map(Number); + const dateTime = new Date(dateStr); + dateTime.setHours(hours, minutes, seconds); + const now = new Date(); + + return dateTime > now; +} + +export default isDateTimeInFuture; \ No newline at end of file diff --git a/src/pages/BandiBeneficiario/components/AllBandiAccordion/index.js b/src/pages/BandiBeneficiario/components/AllBandiAccordion/index.js index 057deea..8218845 100644 --- a/src/pages/BandiBeneficiario/components/AllBandiAccordion/index.js +++ b/src/pages/BandiBeneficiario/components/AllBandiAccordion/index.js @@ -1,5 +1,5 @@ import React, { useState, useEffect} from 'react'; -import { __ } from '@wordpress/i18n'; +import { __, sprintf } from '@wordpress/i18n'; import { is, uniq, isNil, isEmpty } from 'ramda'; import { wrap } from 'object-path-immutable'; import { useNavigate } from 'react-router-dom'; @@ -30,6 +30,8 @@ import { Button } from 'primereact/button'; // i18n import translationStrings from '../../../../translationStringsForComponents'; import isDateTimeInPast from '../../../../helpers/isDateTimeInPast'; +import isDateTimeInFuture from '../../../../helpers/isDateTimeInFuture'; +import { Badge } from 'primereact/badge'; const REACT_APP_HUB_ID = process.env.REACT_APP_HUB_ID; @@ -182,18 +184,22 @@ const AllBandiAccordion = ({ showOnlyPreferred = false }) => { const rowExpansionTemplate = (data) => { const isCallExpired = isDateTimeInPast(data.dates[1], data.endTime); + const isCallScheduled = isDateTimeInFuture(data.dates[0], data.startTime); + return (
{renderHtmlContent(data.descriptionShort)}

{__('Scadenza', 'gepafin')}: {getDateFromISOstring(data.dates[1])}

- {!isCallExpired && !isEmpty(chosenCompanyId) && chosenCompanyId !== 0 && (!data.confidi + {!isCallExpired && !isCallScheduled && !isEmpty(chosenCompanyId) && chosenCompanyId !== 0 && (!data.confidi || (data.confidi && data.id === 6 && REACT_APP_HUB_ID === 'p4lk3bcx1RStqTaIVVbXs')) ? : null} {isCallExpired - ?

{__('È scaduto', 'gepafin')}

: null} - {isCallExpired || (!isEmpty(chosenCompanyId) && chosenCompanyId !== 0 && data.confidi + ?

: null} + {isCallScheduled + ?

: null} + {isCallExpired || isCallScheduled || (!isEmpty(chosenCompanyId) && chosenCompanyId !== 0 && data.confidi && (data.id !== 6 || (data.id === 6 && REACT_APP_HUB_ID !== 'p4lk3bcx1RStqTaIVVbXs'))) ?