Add log exposure to before enter on welcome page.
This commit is contained in:
parent
cae761de2d
commit
d3b553643b
3 changed files with 23 additions and 6 deletions
|
|
@ -1,5 +1,7 @@
|
||||||
const experimentUniverses = Object.freeze({
|
const experimentUniverses = Object.freeze({
|
||||||
ISS_FUNNEL: 'ISSFunnel'
|
ISS_FUNNEL: 'ISSFunnel',
|
||||||
|
ISS_FEATURETOGGLE_AREFEES_HIDDEN: 'NextGenISS_FeatureToggle_AreFeesHidden',
|
||||||
|
ISS_FEATURETOGGLE_AREFEES_OVERRIDDEN: 'NextGenISS_FeatureToggle_AreFeesOverridden'
|
||||||
});
|
});
|
||||||
|
|
||||||
const experimentSettings = Object.freeze({
|
const experimentSettings = Object.freeze({
|
||||||
|
|
|
||||||
|
|
@ -202,9 +202,9 @@ export default {
|
||||||
async beforeRouteEnter(to, from, next) {
|
async beforeRouteEnter(to, from, next) {
|
||||||
// Call APIs
|
// Call APIs
|
||||||
const cmsContentPromise = fetchCmsContentForPage(to.query.issPage);
|
const cmsContentPromise = fetchCmsContentForPage(to.query.issPage);
|
||||||
const cmsGlobalSiteHeaderContentPromise =
|
const cmsGlobalSiteHeaderContentPromise = fetchGlobalCmsContent('iss-siteheader');
|
||||||
fetchGlobalCmsContent('iss-siteheader');
|
|
||||||
|
|
||||||
|
useMainStore().logWelcomePageExperiments(to.query.issPage);
|
||||||
// Settle promises and get results
|
// Settle promises and get results
|
||||||
const promiseResultMap = [
|
const promiseResultMap = [
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ import { endpoints } from '@/constants/endpoints';
|
||||||
import { getDateForSavedSessionTimeout } from '@/helpers/session-helper';
|
import { getDateForSavedSessionTimeout } from '@/helpers/session-helper';
|
||||||
// eslint-disable-next-line import/no-cycle
|
// eslint-disable-next-line import/no-cycle
|
||||||
import globalMethods from '@/global-methods';
|
import globalMethods from '@/global-methods';
|
||||||
import { experimentTriggers } from '@/constants/experiments';
|
import { experimentTriggers, experimentUniverses } from '@/constants/experiments';
|
||||||
import applicationConfig from '@/constants/application-config';
|
import applicationConfig from '@/constants/application-config';
|
||||||
import issPageValues from '@/router/router-constants/issPage-values';
|
import issPageValues from '@/router/router-constants/issPage-values';
|
||||||
import damageLocationsSelected from '@/constants/damage-locations-selected';
|
import damageLocationsSelected from '@/constants/damage-locations-selected';
|
||||||
|
|
@ -29,6 +29,7 @@ import { getLineItemsFlattened } from '@/helpers/line-items-helper';
|
||||||
import { buildQueryStringParameterFromArrayOfComplexObjects, getLineItemQueryString, getTaxLineItemQueryString } from '@/helpers/querystring-helper';
|
import { buildQueryStringParameterFromArrayOfComplexObjects, getLineItemQueryString, getTaxLineItemQueryString } from '@/helpers/querystring-helper';
|
||||||
import coverageType from '@/constants/coverage-type';
|
import coverageType from '@/constants/coverage-type';
|
||||||
import { getFeatureTogglesQueryString } from '@/helpers/experiment-helper';
|
import { getFeatureTogglesQueryString } from '@/helpers/experiment-helper';
|
||||||
|
import { getSessionKeyValue, getUserIdValue } from '@/helpers/cookie-helper';
|
||||||
|
|
||||||
const storeId = 'main';
|
const storeId = 'main';
|
||||||
|
|
||||||
|
|
@ -2202,9 +2203,8 @@ export const useMainStore = defineStore({
|
||||||
this.order.schedule.jobMinMinutes = scheduleInfo.jobMinMinutes;
|
this.order.schedule.jobMinMinutes = scheduleInfo.jobMinMinutes;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
// Analytics Actions
|
// Analytics Actions
|
||||||
logExperimentExposure({ userId, sessionKey, pageName, experiment }) {
|
logExperimentExposure(userId, sessionKey, pageName, experiment) {
|
||||||
return globalMethods.callHttpClient({
|
return globalMethods.callHttpClient({
|
||||||
method: endpoints.LogExperimentExposureIfAssigned.method,
|
method: endpoints.LogExperimentExposureIfAssigned.method,
|
||||||
endpoint: endpoints.LogExperimentExposureIfAssigned.url,
|
endpoint: endpoints.LogExperimentExposureIfAssigned.url,
|
||||||
|
|
@ -2281,6 +2281,21 @@ export const useMainStore = defineStore({
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
logWelcomePageExperiments(issPage) {
|
||||||
|
const hideFeesExperiment = this.applicationUser.experiments.find((e) => e.universeName === experimentUniverses.ISS_FEATURETOGGLE_AREFEES_HIDDEN);
|
||||||
|
const overrideFeesExperiment = this.applicationUser.experiments.find((e) => e.universeName === experimentUniverses.ISS_FEATURETOGGLE_AREFEES_OVERRIDDEN);
|
||||||
|
|
||||||
|
if ((hideFeesExperiment !== undefined) || (overrideFeesExperiment !== undefined)) {
|
||||||
|
const userId = getUserIdValue();
|
||||||
|
const sessionKey = getSessionKeyValue();
|
||||||
|
if (hideFeesExperiment !== undefined) {
|
||||||
|
this.logExperimentExposure(userId, sessionKey, issPage, hideFeesExperiment);
|
||||||
|
}
|
||||||
|
if (overrideFeesExperiment !== undefined) {
|
||||||
|
this.logExperimentExposure(userId, sessionKey, issPage, overrideFeesExperiment);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
initializeSession({ userId, sessionId, userAgent, referrer }) {
|
initializeSession({ userId, sessionId, userAgent, referrer }) {
|
||||||
const payload = {
|
const payload = {
|
||||||
applicationName: applicationConfig.APPLICATION_NAME,
|
applicationName: applicationConfig.APPLICATION_NAME,
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue