Skip to content

Commit 607fbe0

Browse files
committed
Added privacy pro subscription origin per cohort
1 parent 4a0f2fa commit 607fbe0

File tree

2 files changed

+19
-4
lines changed

2 files changed

+19
-4
lines changed

app/src/main/java/com/duckduckgo/app/browser/BrowserTabViewModel.kt

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3655,9 +3655,12 @@ class BrowserTabViewModel @Inject constructor(
36553655
private fun onDaxBubbleCtaOkButtonClicked(cta: DaxBubbleCta): Command? {
36563656
onUserDismissedCta(cta)
36573657
return when (cta) {
3658-
is DaxBubbleCta.DaxPrivacyProCta, is DaxBubbleCta.DaxExperimentPrivacyProCta -> LaunchPrivacyPro(
3659-
"https://duckduckgo.com/pro?origin=funnel_pro_android_onboarding".toUri(),
3660-
)
3658+
is DaxBubbleCta.DaxPrivacyProCta, is DaxBubbleCta.DaxExperimentPrivacyProCta -> {
3659+
val cohortOrigin = ctaViewModel.getCohortOrigin()
3660+
LaunchPrivacyPro(
3661+
"https://duckduckgo.com/pro?origin=funnel_pro_android_onboarding$cohortOrigin".toUri(),
3662+
)
3663+
}
36613664
is DaxBubbleCta.DaxEndCta, is DaxBubbleCta.DaxExperimentEndCta -> {
36623665
viewModelScope.launch {
36633666
val updatedCta = refreshCta()

app/src/main/java/com/duckduckgo/app/cta/ui/CtaViewModel.kt

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,11 @@ import com.duckduckgo.app.global.model.domain
3131
import com.duckduckgo.app.global.model.orderedTrackerBlockedEntities
3232
import com.duckduckgo.app.onboarding.store.*
3333
import com.duckduckgo.app.onboarding.ui.page.extendedonboarding.ExtendedOnboardingFeatureToggles
34+
import com.duckduckgo.app.onboarding.ui.page.extendedonboarding.ExtendedOnboardingFeatureToggles.Cohorts
3435
import com.duckduckgo.app.onboarding.ui.page.extendedonboarding.ExtendedOnboardingPixelsPlugin
3536
import com.duckduckgo.app.onboarding.ui.page.extendedonboarding.HighlightsOnboardingExperimentManager
3637
import com.duckduckgo.app.onboarding.ui.page.extendedonboarding.testPrivacyProOnboardingPrimaryButtonMetricPixel
38+
import com.duckduckgo.app.onboarding.ui.page.extendedonboarding.testPrivacyProOnboardingSecondaryButtonMetricPixel
3739
import com.duckduckgo.app.onboarding.ui.page.extendedonboarding.testPrivacyProOnboardingShownMetricPixel
3840
import com.duckduckgo.app.pixels.AppPixelName.ONBOARDING_SKIP_MAJOR_NETWORK_UNIQUE
3941
import com.duckduckgo.app.privacy.db.UserAllowListRepository
@@ -186,7 +188,7 @@ class CtaViewModel @Inject constructor(
186188
suspend fun onUserClickCtaSkipButton(cta: Cta) {
187189
withContext(dispatchers.io()) {
188190
if (cta is DaxBubbleCta.DaxPrivacyProCta || cta is DaxBubbleCta.DaxExperimentPrivacyProCta) {
189-
extendedOnboardingPixelsPlugin.testPrivacyProOnboardingPrimaryButtonMetricPixel()?.getPixelDefinitions()?.forEach {
191+
extendedOnboardingPixelsPlugin.testPrivacyProOnboardingSecondaryButtonMetricPixel()?.getPixelDefinitions()?.forEach {
190192
pixel.fire(it.pixelName, it.params)
191193
}
192194
}
@@ -503,6 +505,16 @@ class CtaViewModel @Inject constructor(
503505

504506
fun isSuggestedSiteOption(query: String): Boolean = onboardingStore.getSitesOptions().map { it.link }.contains(query)
505507

508+
fun getCohortOrigin(): String {
509+
return when {
510+
extendedOnboardingFeatureToggles.testPrivacyProOnboardingCopyNov24().isEnabled(Cohorts.PROTECTION) -> "_${Cohorts.PROTECTION.cohortName}"
511+
extendedOnboardingFeatureToggles.testPrivacyProOnboardingCopyNov24().isEnabled(Cohorts.PIR) -> "_${Cohorts.PIR.cohortName}"
512+
extendedOnboardingFeatureToggles.testPrivacyProOnboardingCopyNov24().isEnabled(Cohorts.VPN) -> "_${Cohorts.VPN.cohortName}"
513+
extendedOnboardingFeatureToggles.testPrivacyProOnboardingCopyNov24().isEnabled(Cohorts.CONTROL) -> "_${Cohorts.CONTROL.cohortName}"
514+
else -> ""
515+
}
516+
}
517+
506518
companion object {
507519
private const val MAX_TABS_OPEN_FIRE_EDUCATION = 2
508520
}

0 commit comments

Comments
 (0)