import _ from "lodash"; import { useState } from "react"; import Head from "next/head"; import Header from "../components/header"; import Banner from "../components/banner"; import CookieBanner from "../components/cookieBanner"; import Breadcrumbs from "../components/breadcrumbs"; import Search from "../components/search"; import Footer from "../components/footer"; import Errorpage from "../components/errorpage"; import styles from "../styles/Home.module.css"; import { useSelector, shallowEqual, connect } from "react-redux"; import { wrapper } from "../store/store"; import { useRouter } from "next/router"; import useTranslation from "next-translate/useTranslation"; import CRMError from "../components/crmError"; import { setAppealType, setAppealTypeTitle, setAppealTypeID, setAppealLPA, getAppealTypeObj, } from "../store/appealType/action"; import { getAppealsTypes, getLPA, updateCase, createCase, getToken, } from "../actions"; import { setLPA } from "../store/lpa/action"; const Home = (props) => { const { footerLinks, pages } = props; let { t, lang } = useTranslation(); const router = useRouter(); const { locale } = router; const { appealtypes } = router.query; //console.log(props, props.LPAData); 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 token = await getToken(); var tokenIssuedAt = new Date(); var tokenExpiryTimeAt = new Date(); tokenExpiryTimeAt.setSeconds( tokenExpiryTimeAt.getSeconds() + token.expires_in ); // console.log( // "token issued:", // tokenIssuedAt.toUTCString(), // "\n", // "token expires:", // tokenExpiryTimeAt.toUTCString() // ); // console.log(token); token = token.access_token; const [appealTypeData, lpaData] = await Promise.all([ await getAppealsTypes(token), await getLPA(token), ]); store.dispatch(setAppealType(appealTypeData)); store.dispatch(setLPA(lpaData)); } ); 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);