From c54c048e3576bbfaeb14e63a74b670da4b4d5d43 Mon Sep 17 00:00:00 2001 From: M Fahru Date: Fri, 17 Jun 2022 07:55:05 -0400 Subject: [PATCH] Implement premium features discoverability on successful subscription page with split test (#8336) GitOrigin-RevId: 362fa289fa6e009e316dcaceae0587f5fc18162c --- .../Features/Subscription/SubscriptionController.js | 11 +++++++++++ .../views/subscriptions/successful_subscription.pug | 2 ++ services/web/locales/en.json | 3 ++- .../src/Subscription/SubscriptionControllerTests.js | 1 + 4 files changed, 16 insertions(+), 1 deletion(-) diff --git a/services/web/app/src/Features/Subscription/SubscriptionController.js b/services/web/app/src/Features/Subscription/SubscriptionController.js index 5ba6c307a8..41ff5cd166 100644 --- a/services/web/app/src/Features/Subscription/SubscriptionController.js +++ b/services/web/app/src/Features/Subscription/SubscriptionController.js @@ -307,12 +307,23 @@ async function successfulSubscription(req, res) { user ) + const premiumFeaturesDiscoverabilityAssignment = + await SplitTestHandler.promises.getAssignment( + req, + res, + 'premium-features-discoverability' + ) + + const premiumFeaturesDiscoverability = + premiumFeaturesDiscoverabilityAssignment?.variant === 'active' + if (!personalSubscription) { res.redirect('/user/subscription/plans') } else { res.render('subscriptions/successful_subscription', { title: 'thank_you', personalSubscription, + premiumFeaturesDiscoverability, }) } } diff --git a/services/web/app/views/subscriptions/successful_subscription.pug b/services/web/app/views/subscriptions/successful_subscription.pug index dbd1035dae..a452b94bc8 100644 --- a/services/web/app/views/subscriptions/successful_subscription.pug +++ b/services/web/app/views/subscriptions/successful_subscription.pug @@ -20,6 +20,8 @@ block content a.btn.btn-success.btn-large(href=`/manage/groups/${personalSubscription._id}/members`) #{translate("add_your_first_group_member_now")} p.letter-from-founders p #{translate("thanks_for_subscribing_you_help_sl", {planName:personalSubscription.plan.name})} + if premiumFeaturesDiscoverability + p !{translate("to_get_the_most_of_sub_check_premium_features", {}, [{name: 'a', attrs: {href: 'https://www.overleaf.com/learn/how-to/Overleaf_premium_features'}}])} p #{translate("need_anything_contact_us_at")} a(href=`mailto:${settings.adminEmail}`, ng-non-bindable) #{settings.adminEmail} | . diff --git a/services/web/locales/en.json b/services/web/locales/en.json index ca4a3e100f..acee3d9855 100644 --- a/services/web/locales/en.json +++ b/services/web/locales/en.json @@ -1774,5 +1774,6 @@ "group_plan_with_name_tooltip": "You are on the __plan__ plan as a member of a group subscription, __groupName__. Click to find out how you could benefit from Overleaf premium features!", "commons_plan_tooltip": "You’re on the __plan__ plan because of your affiliation with __institution__. Click to find out how you could benefit from Overleaf premium features!", "trial_last_day": "This is the last day of your Overleaf Premium trial", - "trial_remaining_days": "__days__ more days on your Overleaf Premium trial" + "trial_remaining_days": "__days__ more days on your Overleaf Premium trial", + "to_get_the_most_of_sub_check_premium_features": "To get the most out of your subscription, check out the list of <0>__appName__’s premium features" } diff --git a/services/web/test/unit/src/Subscription/SubscriptionControllerTests.js b/services/web/test/unit/src/Subscription/SubscriptionControllerTests.js index 3766620478..5122d83415 100644 --- a/services/web/test/unit/src/Subscription/SubscriptionControllerTests.js +++ b/services/web/test/unit/src/Subscription/SubscriptionControllerTests.js @@ -403,6 +403,7 @@ describe('SubscriptionController', function () { assert.deepEqual(variables, { title: 'thank_you', personalSubscription: 'foo', + premiumFeaturesDiscoverability: false, }) done() }