From 8c5b299412fa001ae0c3e4284353daa85233a00b Mon Sep 17 00:00:00 2001 From: rdbsolutions Date: Tue, 18 Oct 2022 11:51:30 +0100 Subject: [PATCH] removed gov gateway references --- actions/govgateway.js | 31 -------- components/homepage/login.js | 23 +----- components/main.js | 8 +- components/myportal.js | 3 +- pages/api/endpoint/getportallogin_api.js | 51 +++++++++++++ pages/index.js | 96 ++++++------------------ pages/myportal/[appealtypes].js | 7 +- pages/myportal/advancedsearch.js | 7 +- pages/myportal/advancedsearchresults.js | 8 +- pages/myportal/case.js | 3 +- pages/myportal/index.js | 9 --- pages/myportal/searchresults.js | 7 +- pages/myportal/viewall.js | 3 +- pages/newappeal/[appealtypes].js | 7 +- pages/newappeal/aboutyou.js | 1 - pages/newappeal/index.js | 7 +- store/store.js | 7 +- 17 files changed, 87 insertions(+), 191 deletions(-) create mode 100644 pages/api/endpoint/getportallogin_api.js diff --git a/actions/govgateway.js b/actions/govgateway.js index 0b6e2061..74acc198 100644 --- a/actions/govgateway.js +++ b/actions/govgateway.js @@ -31,37 +31,6 @@ export const getProviderConfig = () => { }); }; -export const getGGToken = (tokenURL, authCode, redirectUri) => { - const tokenBody = - "grant_type=authorization_code" + - "&code=" + - authCode + - "&redirect_uri=" + - redirectUri; - - const basicAuthBase64 = (ggClientID + ":" + ggClientSecret).toString(); - //console.log("base64 " + Base64.encode(basicAuthBase64)); - - const tokenConfig = { - headers: { - "Content-Type": "application/x-www-form-urlencoded", - "Authorization": "Basic " + Base64.encode(basicAuthBase64), - }, - }; - - return axios - .post(tokenURL, tokenBody, tokenConfig) - .then((res) => res.data) - .catch((error) => { - // if (error.response) { - // console.log(error.response.data); - // console.log(error.response.status); - // console.log(error.response.headers); - // } - return error.response; - }); -}; - export const getUserInfo = (userInfoURL, authToken) => { const tokenConfig = { headers: { diff --git a/components/homepage/login.js b/components/homepage/login.js index 53542a2c..b0741693 100644 --- a/components/homepage/login.js +++ b/components/homepage/login.js @@ -117,15 +117,8 @@ const RenderPasswordfield = ({ let Login = (props) => { let { t } = useTranslation(); - const { - handleSubmit, - pristine, - reset, - submitting, - setLoggedInUserId, - GG_CLIENT_ID, - GG_REDIRECT_URI, - } = props; + const { handleSubmit, pristine, reset, submitting, setLoggedInUserId } = + props; const { data: session } = useSession(); @@ -135,17 +128,6 @@ let Login = (props) => { // const [showSpinnerState, setShowSpinnerState] = useState(false); const [validLoginID, setValidLoginID] = useState(null); - // console.log( - // "built login url path:", - // props.govGateway.config.authorization_endpoint + - // "?response_type=code&scope=openid&client_id=" + - // GG_CLIENT_ID + - // "&redirect_uri=" + - // GG_REDIRECT_URI + - // "&ui_locales=" + - // (router.locale == "cy" ? "cy" : "en-GB") - // ); - // let spinnerState = () => { // showSpinnerState == true // ? setShowSpinnerState(false) @@ -412,7 +394,6 @@ const mapStateToProps = (state) => { watchedCases: state.watchedCases, myRepresentations: state.myRepresentations, awaitingSubmission: state.awaitingSubmission, - govGateway: state.govGateway, }; }; diff --git a/components/main.js b/components/main.js index 11af2de7..deefa314 100644 --- a/components/main.js +++ b/components/main.js @@ -12,7 +12,7 @@ import Dns from "./homepage/dns"; const MainHome = (props) => { let { t } = useTranslation(); - const { showLogin, GG_REDIRECT_URI, GG_CLIENT_ID, session } = props; + const { showLogin, session } = props; const router = useRouter(); const { locale } = router; @@ -34,11 +34,7 @@ const MainHome = (props) => { {showLogin == "true" && ( <> - + )}{" "} diff --git a/components/myportal.js b/components/myportal.js index 907ff43b..a52f09c0 100644 --- a/components/myportal.js +++ b/components/myportal.js @@ -26,7 +26,6 @@ const MyPortal = (props) => { console.info("////////////\n" + "logout" + "\n////////////"); destroyCookie({}, "pinsUser"), window.localStorage.clear(), - //router.replace(props.ggLogout); signOut({ callbackUrl: "/logout" }); }; @@ -143,7 +142,7 @@ const MyPortal = (props) => { - + ); }; diff --git a/pages/api/endpoint/getportallogin_api.js b/pages/api/endpoint/getportallogin_api.js new file mode 100644 index 00000000..d74c6acb --- /dev/null +++ b/pages/api/endpoint/getportallogin_api.js @@ -0,0 +1,51 @@ +import axios from "axios"; +import CryptoJS from "crypto-js"; +import _ from "lodash"; +import { getToken, azureHeadersPaged, consoleLogger } from "../../../actions"; + +const WORDKEY = process.env.HASHKEY; + +const WEBAPI_URL = + process.env.RELAY_ROOT || + "https://dev-pedw-ns.servicebus.windows.net/dev-pedw-hc/"; + +const hashAPIPath = (queryPath) => { + var hashlink = CryptoJS.HmacSHA256( + queryPath, + CryptoJS.enc.Hex.parse(WORDKEY) + ); + hashlink = hashlink.toString(CryptoJS.enc.Hex); + return (queryPath.indexOf("?") > -1 ? "&hash=" : "?hash=") + hashlink; +}; + +export default async function ApiProxy(req, res) { + var emailAddress = req.query.emailAddress; + var token = await getToken(); + + var queryUrl = + "contacts?$filter=emailaddress1 eq '" + + emailAddress + + "'&$count=true&$select=emailaddress1,contactid,pinswg_custom_password,yomifullname,firstname,lastname"; + + //console.log(req.query); + + var apiResponse = _.isEmpty(req.query) + ? res.status(400).json() + : typeof emailAddress != "undefined" && emailAddress.length > 0 + ? axios + .get( + WEBAPI_URL + queryUrl + hashAPIPath(queryUrl), + azureHeadersPaged(token.access_token) + ) + .then(({ data }) => { + console.log(data); + res.status(200).json(data); + }) + .catch((err) => { + console.log(consoleLogger(err)); + res.status(400).json(err); + }) + : res.status(400).json(); + + return apiResponse; +} diff --git a/pages/index.js b/pages/index.js index 95a9ec50..c68cf51d 100644 --- a/pages/index.js +++ b/pages/index.js @@ -4,13 +4,7 @@ import Head from "next/head"; import { useRouter } from "next/router"; import { setCookie } from "nookies"; import { connect } from "react-redux"; -import { getNotice, getToken, hashString } from "../actions"; -import { - getGGToken, - getPortalLogin, - getProviderConfig, - getUserInfo, -} from "../actions/govgateway"; +import { getNotice, getToken, hashString, getPortalLogin } from "../actions"; import CookieBanner from "../components/cookieBanner"; import Footer from "../components/footer"; import Header from "../components/header"; @@ -21,7 +15,6 @@ import { setAccountDetails, setContainerID, } from "../store/accountDetails/action"; -import { getGovGatewayConfig } from "../store/govgateway/action"; import { wrapper } from "../store/store"; import { getSession, useSession, signIn, signOut } from "next-auth/react"; @@ -32,10 +25,8 @@ const Home = (props) => { showLogin, showMap, loggedInUserId, - hasGGCode, loginEmailStr, loggedInUserEmail, - ggLocale, hasLoginCode, noticeContent, } = props; @@ -74,9 +65,7 @@ const Home = (props) => { }), router.replace({ pathname: - router.locale == "cy" || ggLocale == "cy" - ? "/cy/fymhorth" - : "/myportal", + router.locale == "cy" ? "/cy/fymhorth" : "/myportal", })) : console.log("no value in user id"); @@ -156,16 +145,8 @@ const Home = (props) => {
{hasLoginCode ? ( <> -

- {ggLocale == "cy" - ? "Mewngofnodi" - : "Logging in"} -

-

- {ggLocale == "cy" - ? "Arhoswch os gwelwch yn dda..." - : "Please wait..."} -

+

{t("home:logging-in-heading")}

+

{t("home:logging-in-paragraph")}

) : ( <> @@ -174,13 +155,10 @@ const Home = (props) => { )}
)} @@ -200,7 +178,7 @@ export const getServerSideProps = wrapper.getServerSideProps( var relayToken = await getToken(); relayToken = relayToken.access_token; - console.log("\n///////////////\nauth sess:", thisSession); + console.log("\n////////////////////\nauth sess:", thisSession); const showLoginCheck = process.env.SHOWLOGIN || false; const showMapCheck = process.env.SHOWMAPS || false; @@ -209,13 +187,10 @@ export const getServerSideProps = wrapper.getServerSideProps( console.log("server side has session:", thisSession != null); - // let providerConfig = await getProviderConfig(); let ggLocale = typeof query.ui_locales != "undefined" && query.ui_locales; - console.log("hasloginCode:", hasLoginCode); - - // store.dispatch(getGovGatewayConfig(providerConfig)); + console.log("hasloginCode:", hasLoginCode + "\n////////////////////\n"); const noticeContent = await getNotice(); @@ -228,50 +203,22 @@ export const getServerSideProps = wrapper.getServerSideProps( loginEmailStr = hashString(thisSession.user.email); store.dispatch(setContainerID(thisSession.user.id)); - portalUserObj = await getPortalLogin( - thisSession.user.email, - relayToken - ); + portalUserObj = await getPortalLogin(thisSession.user.email); + } else { + console.log("///////////////\nempty session \n///////////////\n"); + } - if (_.has(portalUserObj, "status") != false) { - if (portalUserObj.status == 400) { - return { - redirect: { - //destination: "/dns-not-found", - destination: "/error", - permanent: false, - }, - }; - } else { - console.log("loggin user stuff: ", portalUserObj); - store.dispatch(setAccountDetails(portalUserObj)); - } - } - } else { - console.log("empty session"); - } - console.log("///////////////\n"); - if (ggToken.status == 400) { - return { - redirect: { - destination: "/myportal/error", - permanent: false, - }, - }; - } else { - return { - props: { - ggLocale: ggLocale, - showLogin: showLoginCheck, - showMap: showMapCheck, - hasSession: hasLoginCode, - loggedInUserId: portalUserObj, - loggedInUserEmail: loginEmailStr, - hasLoginCode: hasLoginCode, - noticeContent: noticeContent, - }, - }; - } + return { + props: { + showLogin: showLoginCheck, + showMap: showMapCheck, + hasSession: hasLoginCode, + loggedInUserId: portalUserObj, + loggedInUserEmail: loginEmailStr, + hasLoginCode: hasLoginCode, + noticeContent: noticeContent, + }, + }; } ); @@ -287,7 +234,6 @@ const mapStateToProps = (state) => { watchedCases: state.watchedCases, myRepresentations: state.myRepresentations, awaitingSubmission: state.awaitingSubmission, - govGateway: state.govGateway, }; }; export default connect(mapStateToProps)(Home); diff --git a/pages/myportal/[appealtypes].js b/pages/myportal/[appealtypes].js index ef12a30e..e8d7a432 100644 --- a/pages/myportal/[appealtypes].js +++ b/pages/myportal/[appealtypes].js @@ -14,7 +14,6 @@ import { getFilesFromBlob, getProgressFromBlob, } from "../../actions"; -import { getProviderConfig } from "../../actions/govgateway"; import Breadcrumbs from "../../components/breadcrumbs"; import CookieBanner from "../../components/cookieBanner"; import Footer from "../../components/footer"; @@ -38,7 +37,6 @@ import { setFilesForAppeal, } from "../../store/appealType/action"; import { setForm } from "../../store/formData/action"; -import { getGovGatewayConfig } from "../../store/govgateway/action"; import { wrapper } from "../../store/store"; import { getPartSavedDetails } from "../../components/utils"; import { getProgressBlobs } from "../../actions/azurestorage"; @@ -208,7 +206,7 @@ let Home = (props) => {