diff --git a/src/helpers/isDateTimeInPast.js b/src/helpers/isDateTimeInPast.js new file mode 100644 index 0000000..7a2223c --- /dev/null +++ b/src/helpers/isDateTimeInPast.js @@ -0,0 +1,10 @@ +const isDateTimeInPast = (dateStr, timeStr) => { + 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 isDateTimeInPast; \ No newline at end of file diff --git a/src/layouts/DefaultLayout/components/AppTopbar/index.js b/src/layouts/DefaultLayout/components/AppTopbar/index.js index 8bb75b4..8aae5f8 100644 --- a/src/layouts/DefaultLayout/components/AppTopbar/index.js +++ b/src/layouts/DefaultLayout/components/AppTopbar/index.js @@ -1,13 +1,9 @@ import React, { useRef } from 'react'; -import { __ } from '@wordpress/i18n'; // components import { Toolbar } from 'primereact/toolbar'; import { Link } from 'react-router-dom'; import LogoIcon from '../../../../icons/LogoIcon'; -import { IconField } from 'primereact/iconfield'; -import { InputIcon } from 'primereact/inputicon'; -import { InputText } from 'primereact/inputtext'; import { Button } from 'primereact/button'; import TopBarProfileMenu from '../../../../components/TopBarProfileMenu'; import NotificationsSidebar from '../../../../components/NotificationsSidebar'; @@ -20,12 +16,12 @@ const AppTopbar = () => { ; const endContent =
{__('Scadenza', 'gepafin')}: {getDateFromISOstring(data.dates[1])}
- {!isEmpty(chosenCompanyId) && chosenCompanyId !== 0 && (!data.confidi + {!isCallExpired && !isEmpty(chosenCompanyId) && chosenCompanyId !== 0 && (!data.confidi || (data.confidi && data.id === 6 && REACT_APP_HUB_ID === 'p4lk3bcx1RStqTaIVVbXs')) ? : null} - {!isEmpty(chosenCompanyId) && chosenCompanyId !== 0 && data.confidi - && (data.id !== 6 || (data.id === 6 && REACT_APP_HUB_ID !== 'p4lk3bcx1RStqTaIVVbXs')) + {isCallExpired + ?{__('È scaduto', 'gepafin')}
: null} + {isCallExpired || (!isEmpty(chosenCompanyId) && chosenCompanyId !== 0 && data.confidi + && (data.id !== 6 || (data.id === 6 && REACT_APP_HUB_ID !== 'p4lk3bcx1RStqTaIVVbXs'))) ? : null} diff --git a/src/pages/BandoApplication/index.js b/src/pages/BandoApplication/index.js index d6d324b..0e5846d 100644 --- a/src/pages/BandoApplication/index.js +++ b/src/pages/BandoApplication/index.js @@ -40,10 +40,12 @@ import FileuploadApplicationSignedPdf from '../../components/FileuploadApplicati import { defaultMaxFileSize } from '../../configData'; import formatDateString from '../../helpers/formatDateString'; +import isDateTimeInPast from '../../helpers/isDateTimeInPast'; const BandoApplication = () => { const chosenCompanyId = useStore().main.chosenCompanyId(); const { id } = useParams(); + const [isExpired, setIsExpired] = useState(false); const [formData, setFormData] = useState([]); const [formInitialData, setFormInitialData] = useState(null); const [bandoTitle, setBandoTitle] = useState(''); @@ -297,6 +299,8 @@ const BandoApplication = () => { //setCompletedSteps(data.data.completedSteps); setApplicationStatus(data.data.applicationStatus) setActiveStep(data.data.currentStep); + const isCallExpired = isDateTimeInPast(data.data.callEndDate, data.data.callEndTime); + setIsExpired(isCallExpired); const chosenCompanyId = data.data.companyId; const companies = storeGet.main.companies(); @@ -396,27 +400,27 @@ const BandoApplication = () => { {activeStep > 1 && activeStep <= totalSteps ? : null} {activeStep < totalSteps ? : null} @@ -570,6 +574,12 @@ const BandoApplication = () => {