diff --git a/editor.planx.uk/src/pages/OfflinePage.tsx b/editor.planx.uk/src/pages/OfflinePage.tsx index ede316160b..7ffcc9c85c 100644 --- a/editor.planx.uk/src/pages/OfflinePage.tsx +++ b/editor.planx.uk/src/pages/OfflinePage.tsx @@ -5,7 +5,12 @@ import React from "react"; export const OfflinePage: React.FC = () => ( - This service is not currently available. Please check back later. + This service is not currently available to new applicants. Please check + back later. + + + If you're resuming an application you previously started, please use the + link sent to you via email. ); diff --git a/editor.planx.uk/src/routes/published.tsx b/editor.planx.uk/src/routes/published.tsx index bcf02182fe..cfe85ddb82 100644 --- a/editor.planx.uk/src/routes/published.tsx +++ b/editor.planx.uk/src/routes/published.tsx @@ -26,17 +26,21 @@ const routes = compose( }), mount({ - "/": route({ + "/": route((req) => ({ view: () => { - const isOnline = useStore.getState().flowStatus === "online"; + const isFlowOnline = useStore.getState().flowStatus === "online"; + const isUserResuming = Boolean(req.params.sessionId); - return isOnline ? ( + // Allow users to complete Save & Return journeys, even if a flow is offline + const isFlowAccessible = isFlowOnline || isUserResuming; + + return isFlowAccessible ? ( ) : ( ); }, - }), + })), "/pages/:page": map((req) => { return route({ view: () => ,