diff --git a/src/layouts/payment-method/add-vaps-modal-buttons/add-vaps-modal-buttons.vue b/src/layouts/payment-method/add-vaps-modal-buttons/add-vaps-modal-buttons.vue index fa78915c1..0c7976ea8 100644 --- a/src/layouts/payment-method/add-vaps-modal-buttons/add-vaps-modal-buttons.vue +++ b/src/layouts/payment-method/add-vaps-modal-buttons/add-vaps-modal-buttons.vue @@ -26,7 +26,7 @@ v-if="wipersModal" @footer-button-action="addWipersToCart('WipersModal', wipersModal)" footerButtonActionName="footer-button-action"> -
+
+${{ wipersModal.totalRearPrice }}

-
+

+${{ wipersModal.totalFrontPrice }}

-
+

+${{ wipersModal.totalRearPrice }}

@@ -139,11 +143,13 @@ export default { }, computed: { currentCartItems() { - return this.modelValue; + const modelValue = this.modelValue; + if (!modelValue.vaps) modelValue.vaps = []; + return modelValue; }, rainDefenseModal() { const lineItem = this.availableLineItems.find((item) => { - return item.partType === partTypeStrings.FRONT_WIPER; + return item.partType === partTypeStrings.RAIN_DEFENSE; }); if (lineItem) lineItem.listPrice = parseFloat( @@ -190,7 +196,7 @@ export default { if (!this.answersCmsData) return buttons; const rainDefenseInCart = this.currentCartItems.vaps?.some((vap) => { - return vap?.partType === partTypeStrings.FRONT_WIPER; + return vap?.partType === partTypeStrings.RAIN_DEFENSE; }); const frontWipersInCart = this.currentCartItems.vaps?.some((vap) => { return vap?.partType?.includes(partTypeStrings.FRONT_WIPER); @@ -209,17 +215,17 @@ export default { if (!rainDefenseInCart) { // NO RAIN DEFENSE IN CART; SHOW RAIN DEFENSE BUTTON const modalData = getAnswer("RainDefenseModal", this.answersCmsData); - modalData.SubText = "+$" + this.rainDefenseModal.listPrice; + modalData.SubText = "+$" + this.rainDefenseModal?.listPrice; buttons.push(modalData); } const modalData = getAnswer("WipersModal", this.answersCmsData); if (!frontWipersInCart) { - if (!rearWipersInCart && this.wipersModal.rearWiperLineItems.length > 0) { + if (!rearWipersInCart && this.wipersModal?.rearWiperLineItems.length > 0) { // NO REAR WIPERS or FRONT WIPERS IN CART; SHOW COMBO BUTTON const prices = [ - this.wipersModal.totalFrontPrice, - this.wipersModal.totalRearPrice, + this.wipersModal?.totalFrontPrice, + this.wipersModal?.totalRearPrice, ]; prices.sort((a, b) => a - b); modalData.SubText = "+$" + prices[0] + " - $" + prices[prices.length - 1]; @@ -227,19 +233,22 @@ export default { buttons.push(modalData); } else { // NO FRONT WIPERS IN CART; SHOW ONLY FRONT WIPERS BUTTON - modalData.SubText = "+$" + this.wipersModal.totalFrontPrice; + modalData.SubText = "+$" + this.wipersModal?.totalFrontPrice; this.updateWipersToDisplay(wipersToDisplayStrings.FRONT); buttons.push(modalData); } - } else if (!rearWipersInCart && this.wipersModal.rearWiperLineItems.length > 0) { + } else if (!rearWipersInCart && this.wipersModal?.rearWiperLineItems.length > 0) { // NO REAR WIPERS IN CART; SHOW ONLY REAR WIPERS BUTTON - modalData.SubText = "+$" + this.wipersModal.totalRearPrice; + modalData.SubText = "+$" + this.wipersModal?.totalRearPrice; this.updateWipersToDisplay(wipersToDisplayStrings.REAR); buttons.push(modalData); } return buttons; }, + wipersToDisplayStrings() { + return wipersToDisplayStrings; + }, }, components: { buttonQuestion,