import useTranslation from "next-translate/useTranslation"; import Head from "next/head"; import { useEffect } from "react"; import { getSession, useSession } from "next-auth/react"; import { useRouter } from "next/router"; import { connect, useDispatch } from "react-redux"; import { getPersonalAccount, getPortalLoginProxy } from "../../actions"; import Breadcrumbs from "../../components/breadcrumbs"; import CookieBanner from "../../components/cookieBanner"; import Footer from "../../components/footer"; import Header from "../../components/header"; import Case from "../../components/representation"; import { setAccountDetails, setContainerID, setLoggedInUserId, } from "../../store/accountDetails/action"; import NoSessionWarning from "../../components/nosession"; import ServiceBanner from "../../components/myportal/servicebanner"; import TimeOut from "../../components/timeout"; const RepresentationF = (props) => { const { footerLinks, pages, accountDetails } = props; let { t, lang } = useTranslation(); const router = useRouter(); const { locale } = router; const { appealtypes } = router.query; const dispatch = useDispatch(); useEffect(() => { const updateAccountStore = async () => { const thisSession = await getSession(); if (thisSession) { let loggedInUser = await getPortalLoginProxy( thisSession.user.email ); dispatch( setAccountDetails( await getPersonalAccount( loggedInUser.value[0].contactid ) ) ); dispatch(setContainerID(thisSession.user.id)); dispatch(setLoggedInUserId(loggedInUser.value[0].contactid)); //dispatch(setRepresentationSubmit(true)); } }; updateAccountStore(); }, [dispatch]); const { data: session, status } = useSession(); if (status === "loading") { return ; } return (
{t("case:page-title")} - {t("common:service-name")} <> {/* If they have a Twitter Handle, include the meta details below */}
); }; // export const getServerSideProps = wrapper.getServerSideProps( // (store) => async (ctx) => { // const { query, req, res } = ctx; // console.log("The query", query); // const { cookies } = req; // let loggedInUserCookie = cookies.pinsUser; // let thisSession = await getSession(ctx); // let loggedInUser = {}; // if (!thisSession) { // console.log("not has sesssion......."); // return { // redirect: { // destination: "/auth/signin", // permanent: false, // }, // }; // } else { // [loggedInUser] = await Promise.all([ // await getPortalLogin(thisSession.user.email), // ]); // console.log( // "=====//////////=====", // thisSession, // thisSession.user.email, // loggedInUser // ); // loggedInUser = loggedInUser.value[0].contactid; // } // const accountDetails = await getPersonalAccount(loggedInUser); // console.log(accountDetails); // store.dispatch(setAccountDetails(accountDetails)); // return { // props: { // containerID: thisSession.user.id, // }, // }; // } // ); const mapDispatchToProps = (dispatch) => { return { setAccountDetails: (loggedInUser) => { dispatch(setAccountDetails(loggedInUser)); }, }; }; const mapStateToProps = (state) => { return { accountDetails: state.accountDetails, currentView: state.currentView, search: state.search, searchResultsObj: state.searchResultsObj, formData: state.formData, appealType: state.appealType, form: state.form, myCases: state.myCases, watchedCases: state.watchedCases, myRepresentations: state.myRepresentations, awaitingSubmission: state.awaitingSubmission, }; }; export default connect(mapStateToProps, mapDispatchToProps)(RepresentationF);