From 926089272728da423ad26470baa8019d9378aa46 Mon Sep 17 00:00:00 2001 From: CarlNation <32103961+CarlNation@users.noreply.github.com> Date: Wed, 28 Feb 2024 09:21:02 -0500 Subject: [PATCH] CSR-1855 CSR-1855 hold off on bailout page. Instead, route to vehicle page with a querystring parm that will clear state if the error occurs more than once. --- src/constants/query-strings.js | 1 + src/router/index.js | 36 ++++++++++++++++++++++++++++++---- 2 files changed, 33 insertions(+), 4 deletions(-) diff --git a/src/constants/query-strings.js b/src/constants/query-strings.js index 5e12b0d9d..12089fca5 100644 --- a/src/constants/query-strings.js +++ b/src/constants/query-strings.js @@ -21,6 +21,7 @@ const queryStrings = { TRANS_REFERENCE_NUMBER: "auth_trans_ref_no", LAST_FOUR: "last_four", DISPLAY_PIA_ALERT: "displayPiaAlert", + PAGE_ERROR: "pageerror", }; export { queryStrings }; diff --git a/src/router/index.js b/src/router/index.js index e489cbfca..415683af3 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -335,6 +335,7 @@ async function navigate( const hasZip = getQuerystringParameter(queryStrings.ZIP_CODE); const zip = getQuerystringParameter(queryStrings.ZIP_CODE); const promo = getQuerystringParameter(queryStrings.PROMO); + const pageError = getQuerystringParameter(queryStrings.PAGE_ERROR); if ( hasZip && @@ -350,6 +351,10 @@ async function navigate( queryStringsObject[queryStrings.PROMO] = promo; } + if (pageError) { + queryStringsObject[queryStrings.PAGE_ERROR] = pageError; + } + router.push({ name: "root", query: Object.assign(optionalQuery, queryStringsObject), @@ -442,10 +447,33 @@ async function DisplayPageError() { ); baseMixin.methods.dispatchStoreAction(storeActions.RESET_SAVE_SESSION_PROMISE); - router.push({ - path: "/", - query: { fmgPage: "bailout" }, - }); + const pageError = getQuerystringParameter(queryStrings.PAGE_ERROR); + + if (pageError) { + var errorCount = Number(pageError); + if (errorCount > 1) { + deleteFunnelCookie(); + await baseMixin.methods.dispatchStoreAction(storeActions.RESET_STATE); + + router.push({ + path: "/", + query: { fmgPage: "vehicle" }, + }); + } + else { + errorCount++; + router.push({ + path: "/", + query: { fmgPage: "vehicle", pageError: errorCount }, + }); + } + } + else { + router.push({ + path: "/", + query: { fmgPage: "vehicle", pageError: "1" }, + }); + } } function isExistingFmgPageName(pageName) {