From 2ac0f83e870bc2831f9724bea56b580d05a61155 Mon Sep 17 00:00:00 2001 From: Mubbshar Anwar <78487564+mubbsharanwar@users.noreply.github.com> Date: Mon, 11 Oct 2021 19:12:42 +0500 Subject: [PATCH] fix: A/B test marketing opt-in (#448) fire optimizely event to record opt-in/out for marketing emails VAN-738 --- src/register/RegistrationPage.jsx | 7 +++++++ src/register/data/sagas.js | 10 +--------- src/register/messages.jsx | 2 +- 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/src/register/RegistrationPage.jsx b/src/register/RegistrationPage.jsx index b341615c..2a0e63cc 100644 --- a/src/register/RegistrationPage.jsx +++ b/src/register/RegistrationPage.jsx @@ -523,6 +523,13 @@ class RegistrationPage extends React.Component { value: this.state.totalRegistrationTime, }, }); + + if (getConfig().MARKETING_EMAILS_OPT_IN === 'true' && this.state.optimizelyExperimentName === 'marketing_opt_in') { + window.optimizely.push({ + type: 'event', + eventName: `marketing-emails-opt-${this.state.marketingOptIn === true ? 'in' : 'out'}`, + }); + } } return ( diff --git a/src/register/data/sagas.js b/src/register/data/sagas.js index 8a029bdc..5d338da9 100644 --- a/src/register/data/sagas.js +++ b/src/register/data/sagas.js @@ -1,6 +1,6 @@ import { call, put, takeEvery } from 'redux-saga/effects'; -import { camelCaseObject, getConfig } from '@edx/frontend-platform'; +import { camelCaseObject } from '@edx/frontend-platform'; import { logError, logInfo } from '@edx/frontend-platform/logging'; // Actions @@ -24,14 +24,6 @@ export function* handleNewUserRegistration(action) { yield put(registerNewUserBegin()); const { redirectUrl, success } = yield call(registerRequest, action.payload.registrationInfo); - const { experimentName } = window; - if (getConfig().MARKETING_EMAILS_OPT_IN === 'true' - && success && experimentName && experimentName === 'marketing_opt_in') { - window.optimizely.push({ - type: 'event', - eventName: `marketing-emails-opt-${action.payload.registrationInfo.opt === true ? 'in' : 'out'}`, - }); - } yield put(registerNewUserSuccess( redirectUrl, success, diff --git a/src/register/messages.jsx b/src/register/messages.jsx index 2d9b372b..044351c7 100644 --- a/src/register/messages.jsx +++ b/src/register/messages.jsx @@ -34,7 +34,7 @@ const messages = defineMessages({ }, 'registration.opt.in.label': { id: 'registration.opt.in.label', - defaultMessage: 'You will be receive marketing emails by checking it', + defaultMessage: 'Receive marketing emails', description: 'You will be receive marketing emails by checking it', }, // Help text