INSR-7758: Add need help link and hide continue until questions answered
This commit is contained in:
parent
e297e72a06
commit
32a083c242
4 changed files with 35 additions and 5 deletions
|
|
@ -33,9 +33,17 @@
|
||||||
ref="siteFooter"
|
ref="siteFooter"
|
||||||
class="mt-5"
|
class="mt-5"
|
||||||
cmsWidgetName="SiteFooterWidget"
|
cmsWidgetName="SiteFooterWidget"
|
||||||
:isForwardActionDisabled="!isMetaValid"
|
:isForwardButtonHidden="!isMetaValid"
|
||||||
@backClicked="handleBackButtonAction"
|
@backClicked="handleBackButtonAction"
|
||||||
@ForwardClicked="handleForwardButtonAction" />
|
@ForwardClicked="handleForwardButtonAction" />
|
||||||
|
<div class="need-help-link-container">
|
||||||
|
<textLink
|
||||||
|
v-if="needHelpLinkText"
|
||||||
|
linkType="navigation"
|
||||||
|
:text="needHelpLinkText"
|
||||||
|
href="#"
|
||||||
|
@clickEvent="handleNeedHelpClick" />
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -48,6 +56,8 @@ import alert from '@/ux-components/alert/alert.vue';
|
||||||
import questionChain from '@/digital-components/question-chain/question-chain.vue';
|
import questionChain from '@/digital-components/question-chain/question-chain.vue';
|
||||||
import siteSubHeader from '@/iss-components/site-sub-header/site-sub-header.vue';
|
import siteSubHeader from '@/iss-components/site-sub-header/site-sub-header.vue';
|
||||||
import siteFooter from '@/iss-components/site-footer/site-footer.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 {
|
export default {
|
||||||
name: 'questions-page',
|
name: 'questions-page',
|
||||||
|
|
@ -56,7 +66,8 @@ export default {
|
||||||
alert,
|
alert,
|
||||||
questionChain,
|
questionChain,
|
||||||
siteSubHeader,
|
siteSubHeader,
|
||||||
siteFooter
|
siteFooter,
|
||||||
|
textLink
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
isMetaValid: Boolean,
|
isMetaValid: Boolean,
|
||||||
|
|
@ -68,7 +79,7 @@ export default {
|
||||||
loadingText: Array,
|
loadingText: Array,
|
||||||
index: Number
|
index: Number
|
||||||
},
|
},
|
||||||
emits: ['update:modelValue', 'forwardButtonAction', 'back-click'],
|
emits: ['update:modelValue', 'forwardButtonAction', 'back-click', 'need-help-click'],
|
||||||
computed: {
|
computed: {
|
||||||
selectedAnswers: {
|
selectedAnswers: {
|
||||||
get() {
|
get() {
|
||||||
|
|
@ -77,6 +88,9 @@ export default {
|
||||||
set(newValue) {
|
set(newValue) {
|
||||||
this.$emit('update:modelValue', newValue);
|
this.$emit('update:modelValue', newValue);
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
needHelpLinkText() {
|
||||||
|
return this.getCmsContent('NeedHelpLinkWidget', widgetFields.TEXT_BLOCK_WIDGET.TEXT);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
|
@ -98,6 +112,9 @@ export default {
|
||||||
},
|
},
|
||||||
handleBackButtonAction() {
|
handleBackButtonAction() {
|
||||||
this.$emit('back-click');
|
this.$emit('back-click');
|
||||||
|
},
|
||||||
|
handleNeedHelpClick() {
|
||||||
|
this.$emit('need-help-click');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
@ -122,4 +139,7 @@ export default {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.need-help-link-container {
|
||||||
|
margin-bottom: 2.25rem;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,8 @@
|
||||||
:validationRules="rules.optionRequired"
|
:validationRules="rules.optionRequired"
|
||||||
:index="currentGlassIndex"
|
:index="currentGlassIndex"
|
||||||
@forwardButtonAction="forwardButtonAction"
|
@forwardButtonAction="forwardButtonAction"
|
||||||
@backClick="navigateBackByVehicleQuestions" />
|
@backClick="navigateBackByVehicleQuestions"
|
||||||
|
@needHelpClick="requestCallbackBailout" />
|
||||||
</Form>
|
</Form>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|
@ -145,6 +146,10 @@ export default {
|
||||||
// TODO KO delete for quote mvp
|
// TODO KO delete for quote mvp
|
||||||
this.navigateForward(glassPartsForStore, null);
|
this.navigateForward(glassPartsForStore, null);
|
||||||
},
|
},
|
||||||
|
requestCallbackBailout() {
|
||||||
|
this.mainStore.setBailout(bailoutMessage.RequestCallback());
|
||||||
|
this.$router.navigate(navigationScenarios.CLICKED_NEED_HELP_WITH_BAILOUT, this.$route);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
|
|
@ -105,7 +105,8 @@ const navigationScenarios = Object.freeze({
|
||||||
PAY_IN_ADVANCE_SUCCESS: 'PAY_IN_ADVANCE_SUCCESS',
|
PAY_IN_ADVANCE_SUCCESS: 'PAY_IN_ADVANCE_SUCCESS',
|
||||||
|
|
||||||
// Bailout
|
// 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;
|
export default navigationScenarios;
|
||||||
|
|
|
||||||
|
|
@ -191,6 +191,10 @@ const routingTable = () => [
|
||||||
{
|
{
|
||||||
scenario: navigationScenarios.CLICKED_FORWARD_WITH_NO_MORE_QUESTIONS,
|
scenario: navigationScenarios.CLICKED_FORWARD_WITH_NO_MORE_QUESTIONS,
|
||||||
destinationIssPageValue: issPageValues.COVERAGE_STATEMENT
|
destinationIssPageValue: issPageValues.COVERAGE_STATEMENT
|
||||||
|
},
|
||||||
|
{
|
||||||
|
scenario: navigationScenarios.CLICKED_NEED_HELP_WITH_BAILOUT,
|
||||||
|
destinationIssPageValue: issPageValues.BAILOUT_PAGE
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue