mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-05-31 21:01:33 +02:00
Merge pull request #22705 from overleaf/mf-tear-down-paywall-cta
[web] Tear down `paywall-cta` split test GitOrigin-RevId: 8cfba819b80bb34f48f8fc1fec37aee6791ef9f0
This commit is contained in:
@@ -338,7 +338,6 @@ const _ProjectController = {
|
||||
'external-socket-heartbeat',
|
||||
'full-project-search',
|
||||
'null-test-share-modal',
|
||||
'paywall-cta',
|
||||
'pdf-caching-cached-url-lookup',
|
||||
'pdf-caching-mode',
|
||||
'pdf-caching-prefetch-large',
|
||||
|
||||
@@ -409,15 +409,6 @@ async function projectListPage(req, res, next) {
|
||||
logger.error({ err: error }, 'Failed to get individual subscription')
|
||||
}
|
||||
|
||||
try {
|
||||
await SplitTestHandler.promises.getAssignment(req, res, 'paywall-cta')
|
||||
} catch (error) {
|
||||
logger.error(
|
||||
{ err: error },
|
||||
'failed to get "paywall-cta" split test assignment'
|
||||
)
|
||||
}
|
||||
|
||||
// Get the user's assignment for the DS unified nav split test, which
|
||||
// populates splitTestVariants with a value for the split test name and allows
|
||||
// Pug to send it to the browser
|
||||
|
||||
@@ -604,21 +604,14 @@
|
||||
"generic_if_problem_continues_contact_us": "",
|
||||
"generic_linked_file_compile_error": "",
|
||||
"generic_something_went_wrong": "",
|
||||
"get_advanced_reference_search": "",
|
||||
"get_collaborative_benefits": "",
|
||||
"get_discounted_plan": "",
|
||||
"get_dropbox_sync": "",
|
||||
"get_error_assist": "",
|
||||
"get_exclusive_access_to_labs": "",
|
||||
"get_full_project_history": "",
|
||||
"get_git_integration": "",
|
||||
"get_github_sync": "",
|
||||
"get_in_touch": "",
|
||||
"get_more_compile_time": "",
|
||||
"get_most_subscription_by_checking_features": "",
|
||||
"get_most_subscription_discover_premium_features": "",
|
||||
"get_symbol_palette": "",
|
||||
"get_track_changes": "",
|
||||
"git": "",
|
||||
"git_authentication_token": "",
|
||||
"git_authentication_token_create_modal_info_1": "",
|
||||
@@ -988,7 +981,6 @@
|
||||
"maximum_files_uploaded_together": "",
|
||||
"maybe_later": "",
|
||||
"members_management": "",
|
||||
"mendeley_cta": "",
|
||||
"mendeley_dynamic_sync_description": "",
|
||||
"mendeley_groups_loading_error": "",
|
||||
"mendeley_groups_relink": "",
|
||||
@@ -1137,7 +1129,6 @@
|
||||
"owner": "",
|
||||
"page_current": "",
|
||||
"pagination_navigation": "",
|
||||
"papers_cta": "",
|
||||
"papers_dynamic_sync_description": "",
|
||||
"papers_groups_loading_error": "",
|
||||
"papers_groups_relink": "",
|
||||
@@ -2139,7 +2130,6 @@
|
||||
"zoom_in": "",
|
||||
"zoom_out": "",
|
||||
"zoom_to": "",
|
||||
"zotero_cta": "",
|
||||
"zotero_dynamic_sync_description": "",
|
||||
"zotero_groups_loading_error": "",
|
||||
"zotero_groups_relink": "",
|
||||
|
||||
@@ -3,7 +3,6 @@ import Icon from '../../../../shared/components/icon'
|
||||
import { useCallback, useEffect, useState } from 'react'
|
||||
import * as eventTracking from '../../../../infrastructure/event-tracking'
|
||||
import StartFreeTrialButton from '../../../../shared/components/start-free-trial-button'
|
||||
import { useFeatureFlag } from '@/shared/context/split-test-context'
|
||||
|
||||
function FeatureItem({ text }: { text: string }) {
|
||||
return (
|
||||
@@ -17,8 +16,6 @@ export function OwnerPaywallPrompt() {
|
||||
const { t } = useTranslation()
|
||||
const [clickedFreeTrialButton, setClickedFreeTrialButton] = useState(false)
|
||||
|
||||
const hasNewPaywallCta = useFeatureFlag('paywall-cta')
|
||||
|
||||
useEffect(() => {
|
||||
eventTracking.send('subscription-funnel', 'editor-click-feature', 'history')
|
||||
eventTracking.sendMB('paywall-prompt', { 'paywall-type': 'history' })
|
||||
@@ -53,9 +50,7 @@ export function OwnerPaywallPrompt() {
|
||||
buttonProps={{ variant: 'premium' }}
|
||||
handleClick={handleFreeTrialClick}
|
||||
>
|
||||
{hasNewPaywallCta
|
||||
? t('get_full_project_history')
|
||||
: t('start_free_trial')}
|
||||
{t('start_free_trial')}
|
||||
</StartFreeTrialButton>
|
||||
</p>
|
||||
{clickedFreeTrialButton ? (
|
||||
|
||||
@@ -2,15 +2,12 @@ import Notification from '@/shared/components/notification'
|
||||
import StartFreeTrialButton from '@/shared/components/start-free-trial-button'
|
||||
import { useTranslation } from 'react-i18next'
|
||||
import { FC } from 'react'
|
||||
import { useFeatureFlag } from '@/shared/context/split-test-context'
|
||||
|
||||
export const CompileTimeWarningUpgradePromptInner: FC<{
|
||||
handleDismissWarning: () => void
|
||||
}> = ({ handleDismissWarning }) => {
|
||||
const { t } = useTranslation()
|
||||
|
||||
const hasNewPaywallCta = useFeatureFlag('paywall-cta')
|
||||
|
||||
return (
|
||||
<Notification
|
||||
action={
|
||||
@@ -21,9 +18,7 @@ export const CompileTimeWarningUpgradePromptInner: FC<{
|
||||
variant: 'secondary',
|
||||
}}
|
||||
>
|
||||
{hasNewPaywallCta
|
||||
? t('get_more_compile_time')
|
||||
: t('start_free_trial_without_exclamation')}
|
||||
{t('start_free_trial_without_exclamation')}
|
||||
</StartFreeTrialButton>
|
||||
}
|
||||
ariaLive="polite"
|
||||
|
||||
@@ -6,7 +6,6 @@ import PdfLogEntry from './pdf-log-entry'
|
||||
import { useStopOnFirstError } from '../../../shared/hooks/use-stop-on-first-error'
|
||||
import OLButton from '@/features/ui/components/ol/ol-button'
|
||||
import * as eventTracking from '../../../infrastructure/event-tracking'
|
||||
import { useFeatureFlag } from '@/shared/context/split-test-context'
|
||||
import getMeta from '@/utils/meta'
|
||||
|
||||
function TimeoutUpgradePromptNew() {
|
||||
@@ -50,8 +49,6 @@ const CompileTimeout = memo(function CompileTimeout({
|
||||
}: CompileTimeoutProps) {
|
||||
const { t } = useTranslation()
|
||||
|
||||
const hasNewPaywallCta = useFeatureFlag('paywall-cta')
|
||||
|
||||
return (
|
||||
<PdfLogEntry
|
||||
headerTitle={t('your_compile_timed_out')}
|
||||
@@ -86,9 +83,7 @@ const CompileTimeout = memo(function CompileTimeout({
|
||||
source="compile-timeout"
|
||||
buttonProps={{ variant: 'primary', className: 'w-100' }}
|
||||
>
|
||||
{hasNewPaywallCta
|
||||
? t('get_more_compile_time')
|
||||
: t('start_a_free_trial')}
|
||||
{t('start_a_free_trial')}
|
||||
</StartFreeTrialButton>
|
||||
</p>
|
||||
)}
|
||||
|
||||
@@ -5,7 +5,6 @@ import teaserVideo from '../images/teaser-track-changes.mp4'
|
||||
import teaserImage from '../images/teaser-track-changes.gif'
|
||||
import { startFreeTrial, upgradePlan } from '@/main/account-upgrade'
|
||||
import { memo } from 'react'
|
||||
import { useFeatureFlag } from '@/shared/context/split-test-context'
|
||||
import OLModal, {
|
||||
OLModalBody,
|
||||
OLModalFooter,
|
||||
@@ -30,8 +29,6 @@ function UpgradeTrackChangesModal({
|
||||
const project = useProjectContext()
|
||||
const user = useUserContext()
|
||||
|
||||
const hasNewPaywallCta = useFeatureFlag('paywall-cta')
|
||||
|
||||
return (
|
||||
<OLModal show={show} onHide={() => setShow(false)}>
|
||||
<OLModalHeader closeButton>
|
||||
@@ -78,9 +75,7 @@ function UpgradeTrackChangesModal({
|
||||
variant="primary"
|
||||
onClick={() => startFreeTrial('track-changes')}
|
||||
>
|
||||
{hasNewPaywallCta
|
||||
? t('get_track_changes')
|
||||
: t('try_it_for_free')}
|
||||
{t('try_it_for_free')}
|
||||
</OLButton>
|
||||
) : (
|
||||
<OLButton
|
||||
|
||||
@@ -804,26 +804,17 @@
|
||||
"generic_if_problem_continues_contact_us": "If the problem continues please contact us",
|
||||
"generic_linked_file_compile_error": "This project’s output files are not available because it failed to compile. Please open the project to see the compilation error details.",
|
||||
"generic_something_went_wrong": "Sorry, something went wrong",
|
||||
"get_advanced_reference_search": "Get advanced reference search",
|
||||
"get_collaborative_benefits": "Get the collaborative benefits from __appName__, even if you prefer to work offline",
|
||||
"get_discounted_plan": "Get discounted plan",
|
||||
"get_dropbox_sync": "Get Dropbox Sync",
|
||||
"get_error_assist": "Get Error Assist",
|
||||
"get_exclusive_access_to_labs": "Get exclusive access to early-stage experiments when you join Overleaf Labs. All we ask in return is your honest feedback to help us develop and improve.",
|
||||
"get_full_project_history": "Get full project history",
|
||||
"get_git_integration": "Get Git integration",
|
||||
"get_github_sync": "Get GitHub Sync",
|
||||
"get_in_touch": "Get in touch",
|
||||
"get_in_touch_having_problems": "<a href=\"__link__\">Get in touch with support</a> if you’re having problems",
|
||||
"get_involved": "Get involved",
|
||||
"get_more_compile_time": "Get more compile time",
|
||||
"get_most_subscription_by_checking_features": "Get the most out of your __appName__ subscription by checking out <0>__appName__’s features</0>.",
|
||||
"get_most_subscription_discover_premium_features": "Get the most from your __appName__ subscription. <0>Discover premium features</0>.",
|
||||
"get_symbol_palette": "Get Symbol Palette",
|
||||
"get_the_best_overleaf_experience": "Get the best Overleaf experience",
|
||||
"get_the_best_writing_experience": "Get the best writing experience",
|
||||
"get_the_most_out_headline": "Get the most out of __appName__ with features such as:",
|
||||
"get_track_changes": "Get track changes",
|
||||
"git": "Git",
|
||||
"git_authentication_token": "Git authentication token",
|
||||
"git_authentication_token_create_modal_info_1": "This is your Git authentication token. You should enter this when prompted for a password.",
|
||||
@@ -1305,7 +1296,6 @@
|
||||
"member_picker": "Select number of users for group plan",
|
||||
"members_management": "Members management",
|
||||
"mendeley": "Mendeley",
|
||||
"mendeley_cta": "Get Mendeley integration",
|
||||
"mendeley_dynamic_sync_description": "With the Mendeley integration, you can import your references into __appName__. You can either import all your references at once or dynamically search your Mendeley library directly from __appName__.",
|
||||
"mendeley_groups_loading_error": "There was an error loading groups from Mendeley",
|
||||
"mendeley_groups_relink": "There was an error accessing your Mendeley data. This was likely caused by lack of permissions. Please re-link your account and try again.",
|
||||
@@ -1394,7 +1384,6 @@
|
||||
"no_existing_password": "Please use the password reset form to set your password",
|
||||
"no_featured_templates": "No featured templates",
|
||||
"no_folder": "No folder",
|
||||
"no_i_dont_need_these": "No, I don’t need these",
|
||||
"no_image_files_found": "No image files found",
|
||||
"no_libraries_selected": "No libraries selected",
|
||||
"no_members": "No members",
|
||||
@@ -1513,7 +1502,6 @@
|
||||
"page_current": "Page __page__, Current Page",
|
||||
"page_not_found": "Page Not Found",
|
||||
"pagination_navigation": "Pagination Navigation",
|
||||
"papers_cta": "Get Papers integration",
|
||||
"papers_dynamic_sync_description": "With the Papers integration, you can import your references into __appName__. You can either import all your references at once or dynamically search your Papers library directly from __appName__.",
|
||||
"papers_groups_loading_error": "There was an error loading libraries from Papers",
|
||||
"papers_groups_relink": "There was an error accessing your Papers data. This was likely caused by lack of permissions. Please re-link your account and try again.",
|
||||
@@ -2582,7 +2570,6 @@
|
||||
"work_or_university_sso": "Work/university single sign-on",
|
||||
"work_with_non_overleaf_users": "Work with non Overleaf users",
|
||||
"work_with_other_github_users": "Work with other GitHub users",
|
||||
"write_and_collaborate_faster_with_features_like": "Write and collaborate faster with features like:",
|
||||
"writefull": "Writefull",
|
||||
"writefull_loading_error_body": "Try refreshing the page. If this doesn’t work, try disabling any active browser extensions to check they aren’t blocking Writefull from loading.",
|
||||
"writefull_loading_error_title": "Writefull didn’t load correctly",
|
||||
@@ -2597,7 +2584,6 @@
|
||||
"x_price_per_year": "__price__ per year",
|
||||
"year": "year",
|
||||
"yearly": "Yearly",
|
||||
"yes_im_in": "Yes, I’m in",
|
||||
"yes_move_me_to_personal_plan": "Yes, move me to the Personal plan",
|
||||
"yes_that_is_correct": "Yes, that’s correct",
|
||||
"you": "You",
|
||||
@@ -2711,7 +2697,6 @@
|
||||
"zoom_to": "Zoom to",
|
||||
"zotero": "Zotero",
|
||||
"zotero_and_mendeley_integrations": "<0>Zotero</0> and <0>Mendeley</0> integrations",
|
||||
"zotero_cta": "Get Zotero integration",
|
||||
"zotero_dynamic_sync_description": "With the Zotero integration, you can import your references into __appName__. You can either import all your references at once or dynamically search your Zotero library directly from __appName__.",
|
||||
"zotero_groups_loading_error": "There was an error loading groups from Zotero",
|
||||
"zotero_groups_relink": "There was an error accessing your Zotero data. This was likely caused by lack of permissions. Please re-link your account and try again.",
|
||||
|
||||
Reference in New Issue
Block a user