From 964ae7553e8befe1131435d206bdea197dfa4d80 Mon Sep 17 00:00:00 2001 From: Jethe Date: Tue, 18 Apr 2023 13:38:13 +0530 Subject: [PATCH 1/3] Hide/display fields based on the client tag SSR-334 --- src/helpers/cms-content-helper.js | 14 ++++++++++++- src/layouts/welcome-page/welcome-page.spec.js | 2 ++ src/layouts/welcome-page/welcome-page.vue | 20 +++++++++++++++++++ src/store/index.js | 2 ++ 4 files changed, 37 insertions(+), 1 deletion(-) diff --git a/src/helpers/cms-content-helper.js b/src/helpers/cms-content-helper.js index 656b2b5f..bb2967e7 100644 --- a/src/helpers/cms-content-helper.js +++ b/src/helpers/cms-content-helper.js @@ -13,10 +13,12 @@ export function fetchCmsContentForPage(issPage) { (baseResponse) => { if ( !clientOverride ) { + setClientTag(clientName,accountNumber); // Return the base page if there are no client override. return processPageData(baseResponse, null); } else { + setClientTag(clientName,accountNumber); // Else get the client override page. const pageName = issPage + "_" + clientName.toLowerCase().replace(/ /g, ""); @@ -115,7 +117,17 @@ function processPageData(baseResponse, clientResponse) { return pageDataFromCms; } - +//ClientTag function to identify essential or advance flow +function setClientTag(clientName,accountNumber) +{ + const storeState = useMainStore(); + if(clientName !="Generic Insurance" && accountNumber){ + storeState.issConfig.flowType = "Advanced Flow"; + } + if(clientName =="Generic Insurance" && accountNumber==0){ + storeState.issConfig.flowType = "Essential Flow"; + } +} // Parent function for processWidgetItemForReplacement. This will loop through the parent // object and pass any objects that need additional processing to the processWidgetItemForReplacement function. function findAndReplaceGlobalStateValues(widgetModel, widgetName) { diff --git a/src/layouts/welcome-page/welcome-page.spec.js b/src/layouts/welcome-page/welcome-page.spec.js index 195f129d..0fa1578f 100644 --- a/src/layouts/welcome-page/welcome-page.spec.js +++ b/src/layouts/welcome-page/welcome-page.spec.js @@ -35,6 +35,7 @@ describe("welcome-page.vue", () => { const glassOnlyDamage = wrapper.findComponent({ ref: "glassOnlyDamage" }); const phoneNumber = wrapper.findComponent({ ref: "phoneNumber" }); const email = wrapper.findComponent({ ref: "email" }); + const policyZip = wrapper.findComponent({ ref: "policyZip" }); // Assert @@ -46,6 +47,7 @@ describe("welcome-page.vue", () => { expect(glassOnlyDamage.exists()).toBe(false); expect(phoneNumber.exists()).toBe(true); expect(email.exists()).toBe(true); + expect(policyZip.exists()).toBe(false); }); }); diff --git a/src/layouts/welcome-page/welcome-page.vue b/src/layouts/welcome-page/welcome-page.vue index 372a3553..652744bb 100644 --- a/src/layouts/welcome-page/welcome-page.vue +++ b/src/layouts/welcome-page/welcome-page.vue @@ -17,6 +17,18 @@ validationRules="policy-number-required" /> +
+
+ +
+
{ enableTPAFlow: false, returnURL: null, returnURL2: null, + flowType:"", } }; }; @@ -613,6 +614,7 @@ export const useMainStore = defineStore({ this.issConfig.enableTPAFlow = false; this.issConfig.returnURL = null; this.issConfig.returnURL2 = null; + this.issConfig.flowType=""; }, updateVehicleYear(year) { From bbcb61b6f62a8e2daa2f22dcdfc9443a02cce597 Mon Sep 17 00:00:00 2001 From: Jethe Date: Thu, 20 Apr 2023 14:53:58 +0530 Subject: [PATCH 2/3] Hide/display fields based on the authentication of client SSR-334 --- src/helpers/cms-content-helper.js | 13 ------------- src/layouts/welcome-page/welcome-page.spec.js | 2 -- src/layouts/welcome-page/welcome-page.vue | 12 ++++++------ src/store/index.js | 2 -- 4 files changed, 6 insertions(+), 23 deletions(-) diff --git a/src/helpers/cms-content-helper.js b/src/helpers/cms-content-helper.js index bb2967e7..430ebb6f 100644 --- a/src/helpers/cms-content-helper.js +++ b/src/helpers/cms-content-helper.js @@ -13,12 +13,10 @@ export function fetchCmsContentForPage(issPage) { (baseResponse) => { if ( !clientOverride ) { - setClientTag(clientName,accountNumber); // Return the base page if there are no client override. return processPageData(baseResponse, null); } else { - setClientTag(clientName,accountNumber); // Else get the client override page. const pageName = issPage + "_" + clientName.toLowerCase().replace(/ /g, ""); @@ -116,17 +114,6 @@ function processPageData(baseResponse, clientResponse) { }); return pageDataFromCms; -} -//ClientTag function to identify essential or advance flow -function setClientTag(clientName,accountNumber) -{ - const storeState = useMainStore(); - if(clientName !="Generic Insurance" && accountNumber){ - storeState.issConfig.flowType = "Advanced Flow"; - } - if(clientName =="Generic Insurance" && accountNumber==0){ - storeState.issConfig.flowType = "Essential Flow"; - } } // Parent function for processWidgetItemForReplacement. This will loop through the parent // object and pass any objects that need additional processing to the processWidgetItemForReplacement function. diff --git a/src/layouts/welcome-page/welcome-page.spec.js b/src/layouts/welcome-page/welcome-page.spec.js index 0fa1578f..195f129d 100644 --- a/src/layouts/welcome-page/welcome-page.spec.js +++ b/src/layouts/welcome-page/welcome-page.spec.js @@ -35,7 +35,6 @@ describe("welcome-page.vue", () => { const glassOnlyDamage = wrapper.findComponent({ ref: "glassOnlyDamage" }); const phoneNumber = wrapper.findComponent({ ref: "phoneNumber" }); const email = wrapper.findComponent({ ref: "email" }); - const policyZip = wrapper.findComponent({ ref: "policyZip" }); // Assert @@ -47,7 +46,6 @@ describe("welcome-page.vue", () => { expect(glassOnlyDamage.exists()).toBe(false); expect(phoneNumber.exists()).toBe(true); expect(email.exists()).toBe(true); - expect(policyZip.exists()).toBe(false); }); }); diff --git a/src/layouts/welcome-page/welcome-page.vue b/src/layouts/welcome-page/welcome-page.vue index 652744bb..c26a31d2 100644 --- a/src/layouts/welcome-page/welcome-page.vue +++ b/src/layouts/welcome-page/welcome-page.vue @@ -17,16 +17,13 @@ validationRules="policy-number-required" />
-
+
+ ref="policyZip" />
@@ -349,7 +346,10 @@ export default { return !!this.getCmsContent("GlassOnlyQuestion","QuestionText"); }, displayPolicyZip(){ - if(this.mainStore.issConfig.flowType=="Essential Flow"){ + if(this.mainStore.issConfig.isAuthenticated){ + return false; + } + else{ return true; } } diff --git a/src/store/index.js b/src/store/index.js index b479a428..1e7a483c 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -107,7 +107,6 @@ const getDefaultState = () => { enableTPAFlow: false, // Indicates if the TPA flow is supported for this client. returnURL: null, returnURL2: null, - flowType:"", } }; }; @@ -618,7 +617,6 @@ export const useMainStore = defineStore({ this.issConfig.enableTPAFlow = false; this.issConfig.returnURL = null; this.issConfig.returnURL2 = null; - this.issConfig.flowType=""; }, updateVehicleYear(year) { From f218baa5457e17bad9f9368e023ac41a68132dc7 Mon Sep 17 00:00:00 2001 From: Jethe Date: Thu, 20 Apr 2023 15:01:28 +0530 Subject: [PATCH 3/3] SSR-334 SSR-334 --- src/helpers/cms-content-helper.js | 1 + src/layouts/welcome-page/welcome-page.vue | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/src/helpers/cms-content-helper.js b/src/helpers/cms-content-helper.js index 430ebb6f..656b2b5f 100644 --- a/src/helpers/cms-content-helper.js +++ b/src/helpers/cms-content-helper.js @@ -115,6 +115,7 @@ function processPageData(baseResponse, clientResponse) { return pageDataFromCms; } + // Parent function for processWidgetItemForReplacement. This will loop through the parent // object and pass any objects that need additional processing to the processWidgetItemForReplacement function. function findAndReplaceGlobalStateValues(widgetModel, widgetName) { diff --git a/src/layouts/welcome-page/welcome-page.vue b/src/layouts/welcome-page/welcome-page.vue index c26a31d2..2054987e 100644 --- a/src/layouts/welcome-page/welcome-page.vue +++ b/src/layouts/welcome-page/welcome-page.vue @@ -253,7 +253,6 @@ export default { isDamageGlassOnly : this.mainStore.order.policy.isDamageGlassOnly, phoneNumber : this.mainStore.order.customer.phoneNumber, email : this.mainStore.order.customer.emailAddress, - policyZip: this.mainStore.order.customer.policyZip, } }, },