CSR-1582 concept save quote links do not load

This commit is contained in:
CarlNation 2023-07-28 13:26:20 -04:00
parent 809a3fa3a5
commit 0411e3cd1f
2 changed files with 16 additions and 2 deletions

View file

@ -98,7 +98,7 @@ export async function skipVinLookupNotRepair() {
/* /*
Logic for getting the last "valid" page a user visited. Logic for getting the last "valid" page a user visited.
*/ */
async function getLatestPageForRedirection() { export async function getLatestPageForRedirection() {
// If this is a non-CTA navigation, determine where to send the user based on page prerequisites. // If this is a non-CTA navigation, determine where to send the user based on page prerequisites.
// This also works if a user has a 'fmg' start_type query string but no current order. // This also works if a user has a 'fmg' start_type query string but no current order.
// That shouldn't happen, but it's possible. // That shouldn't happen, but it's possible.

View file

@ -19,6 +19,7 @@ import { loadSessionIfPresent, saveSession } from "@/helpers/heritage-integratio
import { import {
getPageToRouteExistingOrderTo, getPageToRouteExistingOrderTo,
navigateToHeritageFunnel, navigateToHeritageFunnel,
getLatestPageForRedirection,
} from "@/helpers/heritage-integration/navigation-helper"; } from "@/helpers/heritage-integration/navigation-helper";
import baseMixin from "@/mixins/base-mixin"; import baseMixin from "@/mixins/base-mixin";
@ -124,8 +125,21 @@ const routes = [
.filter((x) => x.name === routeData[0].name)[0] .filter((x) => x.name === routeData[0].name)[0]
.components.default(); .components.default();
// The save quote link via heritage default.aspx... will land here.
// Heritage will attempt to send the customer to the lastest page in NextGen possible.
// If the link was created prior to reaching the end of NextGen, the save quote link
// was going to GoToFunnelStartOn404. This will send as deep into NextGen as possible.
if (!arePagePrerequisitesValid(nextComponent)) { if (!arePagePrerequisitesValid(nextComponent)) {
await GoToFunnelStartOn404(next); var pageToRedirectTo = await getLatestPageForRedirection();
if (pageToRedirectTo) {
return next({
path: "/",
query: { fmgPage: pageToRedirectTo },
params: to.params,
});
} else {
await GoToFunnelStartOn404(next);
}
} }
// Assign current query string parameters, as well as our fmgPage one. // Assign current query string parameters, as well as our fmgPage one.