Hooking into dynamic CMS

This commit is contained in:
Chloe Herd 2023-07-12 09:16:03 -04:00
parent 6b403ac340
commit fd02085b10
2 changed files with 32 additions and 12 deletions

View file

@ -1,6 +1,6 @@
<template> <template>
<reviewBlock <reviewBlock
:headerCmsWidgetName="cmsWidgetName" :headerCmsWidgetName="packageNameWidget"
:content="displayContent" :content="displayContent"
@edit-clicked="editClicked" /> @edit-clicked="editClicked" />
</template> </template>
@ -16,7 +16,9 @@ import { partTypeStrings } from "@/constants/part-type-strings";
export default { export default {
name: "service-package-review", name: "service-package-review",
props: { props: {
cmsWidgetName: String, servicePackageOptionsCmsName: String,
defaultPackageItemsCmsName: String,
vapsPackageItemsCmsName: String,
availableLineItems: Array, availableLineItems: Array,
}, },
data() { data() {
@ -30,23 +32,36 @@ export default {
computed: { computed: {
displayContent() { displayContent() {
return [ return [
...this.packageName,
"-",
...this.defaultPackageText, ...this.defaultPackageText,
...this.frontWipersText, ...this.frontWipersText,
...this.rearWipersText, ...this.rearWipersText,
...this.rainDefenseText, ...this.rainDefenseText,
]; ];
}, },
packageName() { packageNameWidget() {
return [this.packageLevel]; let servicePackageNames = this.getCmsContent(
this.servicePackageOptionsCmsName,
"Answers"
);
if(!servicePackageNames) {
return "";
}
let currentPackage = servicePackageNames.find(
(entry) => entry.Name === this.packageLevel
);
return currentPackage.SubWidgetName;
}, },
defaultPackageText() { defaultPackageText() {
return [ let defaultItems = this.getCmsContent(this.defaultPackageItemsCmsName, "Answers");
"New replacement windshield",
"Expert installation and recalibration", if(!defaultItems) {
"Nationwide lifetime warranty", return [];
]; }
return defaultItems.map((answer) => answer.Text);
}, },
hasFrontWiperVAPS() { hasFrontWiperVAPS() {
return containsLineItemWithPartType(partTypeStrings.FRONT_WIPER, this.vaps); return containsLineItemWithPartType(partTypeStrings.FRONT_WIPER, this.vaps);

View file

@ -54,7 +54,9 @@
<hr class="my-0" /> <hr class="my-0" />
<servicePackageReview <servicePackageReview
cmsWidgetName="ServicePackageReviewWidget" servicePackageOptionsCmsName="ServicePackageTitle"
defaultPackageItemsCmsName="DefaultPackageItemDescriptions"
vapsItemsCmsName="VapsItemDescriptions"
:availableLineItems="availableLineItems" :availableLineItems="availableLineItems"
@edit-clicked="editServicePackage" /> @edit-clicked="editServicePackage" />
</div> </div>
@ -115,8 +117,11 @@ export default {
]; ];
const resultMap = await settleAllPromises(promiseResultMap); const resultMap = await settleAllPromises(promiseResultMap);
console.log(resultMap);
console.log(next);
next((vm) => { next((vm) => {
console.log("next on review");
vm.setCmsContent(resultMap.cmsContent); vm.setCmsContent(resultMap.cmsContent);
vm.availableWipers = resultMap.wipers; vm.availableWipers = resultMap.wipers;