diff --git a/src/global-methods.js b/src/global-methods.js
index 3f7e75b8..9e9f7bd3 100644
--- a/src/global-methods.js
+++ b/src/global-methods.js
@@ -37,6 +37,12 @@ export default {
},
error => {
console.error(error);
+
+ //implement if analytics service is down
+ if(endpoint.includes("analytics")){
+ return resolve({data: ""});
+ }
+
return reject(error.response);
}
);
diff --git a/src/layouts/provider-preference/provider-preference.vue b/src/layouts/provider-preference/provider-preference.vue
index c9079718..1bef0a52 100644
--- a/src/layouts/provider-preference/provider-preference.vue
+++ b/src/layouts/provider-preference/provider-preference.vue
@@ -8,14 +8,22 @@
-
-
-
+
+
+
+
@@ -52,9 +60,11 @@ import { Form,defineRule } from "vee-validate";
import siteFooter from "@/iss-components/site-footer/site-footer.vue";
import siteHeader from "@/iss-components/site-header/site-header.vue";
import siteSubHeader from "@/iss-components/site-sub-header/site-sub-header.vue";
+import providerPrefRadio from "@/layouts/provider-preference/provider-pref-radio/provider-pref-radio.vue"
// DEFINE VALIDATION RULES
-defineRule("questions-required", required(errorMessages.OPTION_REQUIRED));
+defineRule('option-required', required(errorMessages.OPTION_REQUIRED));
+
export default {
name: "provider-preference",
mixins: [baseFormMixin],
@@ -66,11 +76,12 @@ export default {
Form,
buttonQuestion,
contentGroupModal,
- modal
+ modal,
+ providerPrefRadio
},
data() {
return {
- SelectedshopLocation : null,
+ selectedProvider : null,
};
},
async beforeRouteEnter(to, from, next) {
@@ -89,31 +100,71 @@ export default {
},
computed: {
isForwardActionDisabled() {
- return this.SelectedshopLocation === null;
+ return this.selectedProvider === null;
},
+
ProviderPreferenceHeaderText(){
return this.getCmsContent("ProviderPreference", "HeaderText");
},
questionText() {
return this.getCmsContent("ProviderPreference", "SubHeaderText");
},
+
+ prefAnswers() {
+ const cmsAnswersContent = [
+ {
+ cmsWidgetName: 'SafeliteOption'
+ },
+ {
+ cmsWidgetName: 'TPAOption'
+ }
+ ];
+ //if cms content has not yet loaded, skip
+ if (this.getCmsContent(cmsAnswersContent[0].cmsWidgetName, 'HeaderText') == '') {
+ return {};
+ }
+ const modifiedAnswers = cmsAnswersContent.map((answer) => ({
+ value: answer.cmsWidgetName,
+ buttonLabel: this.getHeaderTextFromCms(answer.cmsWidgetName),
+ buttonLabelSubCopy: this.getSubheaderTextFromCms(answer.cmsWidgetName),
+ buttonBodyCopy: this.getBodyTextFromCms(answer.cmsWidgetName),
+ buttonFooterCopy: this.getFooterTextFromCms(answer.cmsWidgetName)
+ }
+ ));
+ return modifiedAnswers;
+ },
+
steeringModalHeader() {
let header = this.getCmsContent("StateSteeringModal", "HeaderText");
return header.replace("{custom:state}", states[this.mainStore.order.customer.address.state])
},
steeringModalBody() {
const bodyText = this.getCmsContent("StateSteeringModal", "BodyText");
- return processIfStatements(bodyText, "custom", this.getStateSpecificText);
+ return processIfStatements(bodyText, "custom", this.getStateSpecificText);
},
steeringModalBody2() {
const bodyText = this.getCmsContent("StateSteeringModal", "BodyText2");
- return processIfStatements(bodyText, "custom", this.getStateSpecificText);
+ return processIfStatements(bodyText, "custom", this.getStateSpecificText);
},
steeringModalFooter() {
return this.getCmsContent("StateSteeringModal", "FooterText");
}
},
methods: {
+ getHeaderTextFromCms(cmsWidgetName) {
+ return this.getCmsContent(cmsWidgetName, 'HeaderText');
+ },
+ getSubheaderTextFromCms(cmsWidgetName) {
+ return this.getCmsContent(cmsWidgetName, 'SubheaderText');
+ },
+ getBodyTextFromCms(cmsWidgetName) {
+ const bodyText = this.getCmsContent(cmsWidgetName, "BodyText");
+ return processIfStatements(bodyText, "custom", this.getCustomValueFromString);
+ },
+ getFooterTextFromCms(cmsWidgetName) {
+ const footerText = this.getCmsContent(cmsWidgetName, "FooterText");
+ return processIfStatements(footerText, "custom", this.getCustomValueFromString);
+ },
getStateSpecificText(value) {
return this.mainStore.order.customer.address.state?.toLowerCase() == value?.toLowerCase();
},
@@ -129,7 +180,7 @@ export default {
forwardButtonAction() {
//todo
this.$router.navigate(this.navigationScenarios.CLICKED_FORWARD_WITH_SAFELITE, this.$route);
- //if(this.SelectedshopLocation == "Schedule with Safelite")
+ //if(this.selectedProvider == "Schedule with Safelite")
//{
// this.$router.navigate(this.navigationScenarios.CLICKED_FORWARD_WITH_SAFELITE, this.$route);
//}
diff --git a/src/store/index.js b/src/store/index.js
index eec2a8c4..9065c37e 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -956,24 +956,24 @@ export const useMainStore = defineStore({
},
logPageView({ userId, sessionKey, pageName, sessionId, action, event, shouldUseSessionId, experimentsForUser })
{
- var payload = {
- userId: userId,
- sessionKey: sessionKey,
- sessionId: sessionId,
- pageName: pageName,
- applicationName: applicationConfig.APPLICATION_NAME,
- action: action,
- event: event,
- shouldUseSessionId: shouldUseSessionId,
- experimentsForUser: experimentsForUser,
- }
+ var payload = {
+ userId: userId,
+ sessionKey: sessionKey,
+ sessionId: sessionId,
+ pageName: pageName,
+ applicationName: applicationConfig.APPLICATION_NAME,
+ action: action,
+ event: event,
+ shouldUseSessionId: shouldUseSessionId,
+ experimentsForUser: experimentsForUser,
+ }
- return globalMethods.callHttpClient({
- method: endpoints.LogPageView.method,
- endpoint: endpoints.LogPageView.url,
- payload: payload,
- logApiCall: false
- });
+ return globalMethods.callHttpClient({
+ method: endpoints.LogPageView.method,
+ endpoint: endpoints.LogPageView.url,
+ payload: payload,
+ logApiCall: false
+ });
},
logCustomEvent({ userId, sessionKey, pageName, sessionId, category, action, label, value, shouldUseSessionId, experimentsForUser})
{