Changing cms retrieval methods

This commit is contained in:
Max 2022-03-25 16:22:15 -04:00
parent c007430e63
commit a2008021c7
3 changed files with 20 additions and 6 deletions

View file

@ -51,6 +51,7 @@ export default {
default: '',
},
validationRules: String,
cmsWidgetName: String,
},
setup(props) {
const fieldOptions = {
@ -85,6 +86,9 @@ export default {
},
},
computed: {
questionTextNew(){
return this.getCmsContent(this.cmsWidgetName).QuestionText ? this.getCmsContent(this.cmsWidgetName).QuestionText : '';
},
value: {
get: function() {
return this.modelValue;
@ -95,7 +99,7 @@ export default {
},
labelText: {
get: function () {
let labelText = this.questionText;
let labelText = this.questionTextNew;
if (this.disableAutoFill) {
var noBreakChar = "⁠";
var position = 1;

View file

@ -11,7 +11,7 @@
<funnelSubHeader ref="funnelSubHeader" />
<div class="row my-2">
<div class="col">
<textboxQuestion ref="LicensePlateNumber" v-model="licensePlate" inputId="license_plate" disableAutoFill validationRules="license-plate-required" />
<textboxQuestion ref="LicensePlateNumber" cmsWidgetName="LicensePlateNumber" v-model="licensePlate" inputId="license_plate" disableAutoFill validationRules="license-plate-required" />
</div>
</div>
<div class="row my-2">
@ -47,7 +47,7 @@
/>
<div class="row my-2">
<div class="col">
<textboxQuestion v-if="newServiceZipRequired" questionText="Service area ZIP code" v-model="serviceZip" inputId="serviceZip" disableAutoFill validationRules="zip-required" />
<textboxQuestion v-if="newServiceZipRequired" v-model="serviceZip" inputId="serviceZip" disableAutoFill validationRules="zip-required" />
</div>
</div>
<funnelFooter
@ -92,6 +92,7 @@ export default {
// Call APIs
const cmsContentPromise = fetchCmsContentForPage(to.query.fmgPage);
// Settle promises and get results
const promiseResultMap = [
{
@ -104,6 +105,7 @@ export default {
// Call the "next" function to complete the transition to this page.
next((vm) => {
vm.setCmsContent(resultMap);
vm.$refs.funnelHeader.initializeComponent(
resultMap.cmsContent.FunnelHeaderWidget
);
@ -127,8 +129,8 @@ export default {
);
vm.noServiceZipWidget = {
headline: resultMap.cmsContent.NoServiceZipWidget.HeadlineText,
copy: resultMap.cmsContent.NoServiceZipWidget.BodyText
};
copy: resultMap.cmsContent.NoServiceZipWidget.BodyText,
};
vm.noMatchAlertWidget = {
headline: resultMap.cmsContent.NoMatchAlertWidget.HeadlineText,
copy: resultMap.cmsContent.NoMatchAlertWidget.BodyText

View file

@ -7,9 +7,17 @@ import { vehicleCategories } from "@/constants/vehicle-categories.js";
export default {
data() {
return {};
return {
cmsContentByWidget: {}
};
},
methods: {
setCmsContent(cmsContent){
this.$root.cmsContentByWidget = cmsContent;
},
getCmsContent(widgetName){
return this.$root === undefined ? null : this.$root.cmsContentByWidget.cmsContent[widgetName];
},
dispatchNonBlockingStoreAction(type, payload, encodePayload = true) {
// Encode the payload if required
if (encodePayload) {