import _ from "lodash"; import useTranslation from "next-translate/useTranslation"; import Head from "next/head"; import { useRouter } from "next/router"; import { connect } from "react-redux"; import { getAppealsTypes, getProjectTypes, getLPA } from "../actions/services/referenceDataService"; import Breadcrumbs from "../components/breadcrumbs"; import CookieBanner from "../components/cookieBanner"; import CRMError from "../components/crmError"; import Footer from "../components/footer"; import Header from "../components/header"; import Search from "../components/search"; import { setAppealType, setProjectType } from "../store/appealType/action"; import { setLPA, setCaseStatus } from "../store/lpa/action"; import { wrapper } from "../store/store"; import ServiceBanner from "../components/servicebanner"; import { getCaseStatus } from "../actions/services/caseDirectService"; const Home = (props) => { const { footerLinks, pages } = props; let { t, lang } = useTranslation(); const router = useRouter(); const { locale } = router; const { appealtypes } = router.query; var hasError = _.has(props.LPAData.LPAData, "errorCode") || _.has(props.appealType.appealType, "errorCode") ? true : false; return (
{t("search:page-title")} - {t("common:service-name")} {/* Language by default is EN, if multilingual site this will need updated */} <> {/* If they have a Twitter Handle, include the meta details below */}
{hasError ? ( ) : ( )}
); }; export const getServerSideProps = wrapper.getServerSideProps( (store) => async ({ query, req, res }) => { let [appealTypeData, projectTypeData, lpaData, caseStatusObj] = await Promise.all([ await getAppealsTypes(), await getProjectTypes(), await getLPA(), await getCaseStatus() ]); //const lpaData = require("../data/lpa.json"); //const appealTypeData = require("../data/appealtypes.json"); store.dispatch(setAppealType(appealTypeData)); store.dispatch(setProjectType(projectTypeData)); store.dispatch(setLPA(lpaData)); store.dispatch(setCaseStatus(caseStatusObj)); } ); const mapStateToProps = (state) => { return { search: state.search, searchResultsObj: state.searchResultsObj, formData: state.formData, appealType: state.appealType, LPAData: state.LPAData, //form: state.form, accountDetails: state.accountDetails }; }; export default connect(mapStateToProps)(Home);