diff --git a/src/iss-components/questions-page-layout/questions-page-layout.vue b/src/iss-components/questions-page-layout/questions-page-layout.vue
index 4ce11fa1..97d06a51 100644
--- a/src/iss-components/questions-page-layout/questions-page-layout.vue
+++ b/src/iss-components/questions-page-layout/questions-page-layout.vue
@@ -33,9 +33,17 @@
ref="siteFooter"
class="mt-5"
cmsWidgetName="SiteFooterWidget"
- :isForwardActionDisabled="!isMetaValid"
+ :isForwardButtonHidden="!isMetaValid"
@backClicked="handleBackButtonAction"
@ForwardClicked="handleForwardButtonAction" />
+
+
+
@@ -48,6 +56,8 @@ import alert from '@/ux-components/alert/alert.vue';
import questionChain from '@/digital-components/question-chain/question-chain.vue';
import siteSubHeader from '@/iss-components/site-sub-header/site-sub-header.vue';
import siteFooter from '@/iss-components/site-footer/site-footer.vue';
+import textLink from '@/ux-components/text-link/text-link.vue';
+import widgetFields from '@/constants/cms-widget-fields';
export default {
name: 'questions-page',
@@ -56,7 +66,8 @@ export default {
alert,
questionChain,
siteSubHeader,
- siteFooter
+ siteFooter,
+ textLink
},
props: {
isMetaValid: Boolean,
@@ -68,7 +79,7 @@ export default {
loadingText: Array,
index: Number
},
- emits: ['update:modelValue', 'forwardButtonAction', 'back-click'],
+ emits: ['update:modelValue', 'forwardButtonAction', 'back-click', 'need-help-click'],
computed: {
selectedAnswers: {
get() {
@@ -77,6 +88,9 @@ export default {
set(newValue) {
this.$emit('update:modelValue', newValue);
}
+ },
+ needHelpLinkText() {
+ return this.getCmsContent('NeedHelpLinkWidget', widgetFields.TEXT_BLOCK_WIDGET.TEXT);
}
},
methods: {
@@ -98,6 +112,9 @@ export default {
},
handleBackButtonAction() {
this.$emit('back-click');
+ },
+ handleNeedHelpClick() {
+ this.$emit('need-help-click');
}
}
};
@@ -122,4 +139,7 @@ export default {
}
}
}
+.need-help-link-container {
+ margin-bottom: 2.25rem;
+}
diff --git a/src/layouts/part-questions/part-questions.vue b/src/layouts/part-questions/part-questions.vue
index 8690e91a..e37ce3c9 100644
--- a/src/layouts/part-questions/part-questions.vue
+++ b/src/layouts/part-questions/part-questions.vue
@@ -12,7 +12,8 @@
:validationRules="rules.optionRequired"
:index="currentGlassIndex"
@forwardButtonAction="forwardButtonAction"
- @backClick="navigateBackByVehicleQuestions" />
+ @backClick="navigateBackByVehicleQuestions"
+ @needHelpClick="requestCallbackBailout" />
@@ -145,6 +146,10 @@ export default {
// TODO KO delete for quote mvp
this.navigateForward(glassPartsForStore, null);
},
+ requestCallbackBailout() {
+ this.mainStore.setBailout(bailoutMessage.RequestCallback());
+ this.$router.navigate(navigationScenarios.CLICKED_NEED_HELP_WITH_BAILOUT, this.$route);
+ }
},
};
diff --git a/src/router/router-constants/navigation-scenarios.js b/src/router/router-constants/navigation-scenarios.js
index 24a0ffb9..58aadc91 100644
--- a/src/router/router-constants/navigation-scenarios.js
+++ b/src/router/router-constants/navigation-scenarios.js
@@ -105,7 +105,8 @@ const navigationScenarios = Object.freeze({
PAY_IN_ADVANCE_SUCCESS: 'PAY_IN_ADVANCE_SUCCESS',
// Bailout
- CLICKED_FORWARD_WITH_BAILOUT: 'CLICKED_FORWARD_WITH_BAILOUT'
+ CLICKED_FORWARD_WITH_BAILOUT: 'CLICKED_FORWARD_WITH_BAILOUT',
+ CLICKED_NEED_HELP_WITH_BAILOUT: 'CLICKED_NEED_HELP_WITH_BAILOUT',
});
export default navigationScenarios;
diff --git a/src/router/router-constants/routing-table.js b/src/router/router-constants/routing-table.js
index a23699d8..a125134e 100644
--- a/src/router/router-constants/routing-table.js
+++ b/src/router/router-constants/routing-table.js
@@ -191,6 +191,10 @@ const routingTable = () => [
{
scenario: navigationScenarios.CLICKED_FORWARD_WITH_NO_MORE_QUESTIONS,
destinationIssPageValue: issPageValues.COVERAGE_STATEMENT
+ },
+ {
+ scenario: navigationScenarios.CLICKED_NEED_HELP_WITH_BAILOUT,
+ destinationIssPageValue: issPageValues.BAILOUT_PAGE
}
]
},