Files
pedwfrontend/components/myportal/servicebanner.js
T
2024-08-13 12:02:46 +01:00

103 lines
3.7 KiB
JavaScript

import useTranslation from "next-translate/useTranslation";
import router from "next/router";
import Link from "next/link";
import { destroyCookie } from "nookies";
import { signOut } from "next-auth/react";
const ServiceBanner = (props) => {
props = props.props;
let { t, lang } = useTranslation();
const signInButton = () => {
router.push(
`${
router.locale == "cy" ? "/awd/mewngofnodi" : "/auth/signin"
}?callbackUrl=${encodeURIComponent(
window.location.href
)}&error=EmailSignin`
);
};
const handleLogout = () => {
console.info("////////////\n" + "logout" + "\n////////////");
window.localStorage.clear(),
destroyCookie(null, "next-auth.csrf-token"),
destroyCookie(null, "next-auth.callback-url"),
destroyCookie(null, "pedw_locale"),
destroyCookie(null, "pinsUser"),
signOut({ callbackUrl: "/logout" });
};
const portalLogoLink = [
"/myportal/[appealtypes]",
"/newappeal",
"/newappeal/[appealtypes]",
];
return (
<div className="servicebanner myportal govuk-!-margin-bottom-4">
<h1>
{portalLogoLink.includes(router.pathname) ? (
<Link href={"/myportal"}>
<img
src={
router.locale == "cy"
? "/assets/images/planning-casework-cy.svg"
: "/assets/images/planning-casework-en.svg"
}
alt={
router.locale == "cy"
? "Fy mhorth"
: "My Portal"
}
/>
</Link>
) : (
<img
src={
router.locale == "cy"
? "/assets/images/planning-casework-cy.svg"
: "/assets/images/planning-casework-en.svg"
}
alt={router.locale == "cy" ? "Fy mhorth" : "My Portal"}
/>
)}
</h1>
<div className="serviceBanner_userDetails">
<img
className="user_logo"
src="/assets/images/user.svg"
alt={router.locale == "cy" ? "Defnyddiwr" : "User"}
/>{" "}
<div className="serviceBanner_userDetails_name">
<Link
href="/account/personaldetails"
className="govuk-button-secondary"
>
{props.accountDetails.accountDetails.firstname}{" "}
{props.accountDetails.accountDetails.lastname}
{" - "}
{
props.accountDetails.accountDetails[
"pinswg_typeofinvolvement@OData.Community.Display.V1.FormattedValue"
]
}
</Link>
</div>
<div>
<Link
href={router.locale == "cy" ? "/allgofnodi" : "/logout"}
onClick={() => {
handleLogout();
}}
className="govuk-header__link "
>
{t("common:signout-label")}
</Link>
</div>
</div>
</div>
);
};
export default ServiceBanner;