Merge pull request #34534 from overleaf/rh-rm-recurly

[web] Remove conditional Recurly checkout page

GitOrigin-RevId: 5bb773080bba682628f0f5428c72b7dff75b6015
This commit is contained in:
roo hutton
2026-06-18 08:06:17 +00:00
committed by Copybot
parent 6613ef2f18
commit 1dfe6e60b3
11 changed files with 0 additions and 289 deletions
@@ -9,7 +9,6 @@ import SubscriptionUpdater from './SubscriptionUpdater.mjs'
import LimitationsManager from './LimitationsManager.mjs'
import EmailHandler from '../Email/EmailHandler.mjs'
import { callbackify } from '@overleaf/promise-utils'
import UserUpdater from '../User/UserUpdater.mjs'
import Modules from '../../infrastructure/Modules.mjs'
import { AI_ADD_ON_CODE } from './AiHelper.mjs'
import CustomerIoPlanHelpers from './CustomerIoPlanHelpers.mjs'
@@ -20,61 +19,6 @@ import AiFeatureUsageRateLimiter from '../../infrastructure/rate-limiters/AiFeat
* @import { PaymentProviderSubscriptionChange } from './PaymentProviderEntities.mjs'
*/
/**
* @param {any} userId
*/
async function validateNoSubscriptionInRecurly(userId) {
let subscriptions =
await RecurlyWrapper.promises.listAccountActiveSubscriptions(userId)
if (!subscriptions) {
subscriptions = []
}
if (subscriptions.length > 0) {
await SubscriptionUpdater.promises.syncSubscription(
subscriptions[0],
userId
)
return false
}
return true
}
/**
* @param {any} user
* @param {any} subscriptionDetails
* @param {any} recurlyTokenIds
*/
async function createSubscription(user, subscriptionDetails, recurlyTokenIds) {
const valid = await validateNoSubscriptionInRecurly(user._id)
if (!valid) {
throw new Error('user already has subscription in recurly')
}
const recurlySubscription = await RecurlyWrapper.promises.createSubscription(
user,
subscriptionDetails,
recurlyTokenIds
)
if (recurlySubscription.trial_started_at) {
const trialStartedAt = new Date(recurlySubscription.trial_started_at)
await UserUpdater.promises.updateUser(
{ _id: user._id, lastTrial: { $not: { $gt: trialStartedAt } } },
{ $set: { lastTrial: trialStartedAt } }
)
}
await SubscriptionUpdater.promises.syncSubscription(
recurlySubscription,
user._id
)
}
/**
* Preview the effect of changing the subscription plan
*
@@ -431,8 +375,6 @@ async function pauseSubscription(user, pauseCycles) {
}
export default {
validateNoSubscriptionInRecurly: callbackify(validateNoSubscriptionInRecurly),
createSubscription: callbackify(createSubscription),
previewSubscriptionChange: callbackify(previewSubscriptionChange),
updateSubscription: callbackify(updateSubscription),
cancelPendingSubscriptionChange: callbackify(cancelPendingSubscriptionChange),
@@ -448,8 +390,6 @@ export default {
pauseSubscription: callbackify(pauseSubscription),
resumeSubscription: callbackify(resumeSubscription),
promises: {
validateNoSubscriptionInRecurly,
createSubscription,
previewSubscriptionChange,
updateSubscription,
cancelPendingSubscriptionChange,