[web] Remove redundant monthlyTimesTwelve from pricing tables (#35506)

* [web] Remove redundant monthlyTimesTwelve from pricing tables

monthlyTimesTwelve was always exactly monthly * 12 in every pricing row,
and the value was only ever used to render the "billed monthly for a year"
strikethrough price in the compile-timeout paywall.

- Drop the stored field from the pricing tables
- Send raw monthly/annual numbers in ol-standardPlanPricing instead of
  pre-formatted strings
- Format the prices (and derive the strikethrough as monthly * 12) in the
  paywall modal via the frontend currency helper

No user-facing change: the displayed prices are identical.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* Remove `monthlyTimesTwelve` from script

* Remove comments

---------

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
GitOrigin-RevId: b637208540b3b96180b1a3cc4417b09944c5d158
This commit is contained in:
Antoine Clausse
2026-09-17 11:29:42 +00:00
committed by Copybot
co-authored by Claude Opus 4.8
parent bf50bf56b4
commit a4da7a935c
4 changed files with 20 additions and 18 deletions
@@ -1059,7 +1059,6 @@ const _ProjectController = {
},
async _getPlanPricing(req, res, plan = 'collaborator') {
const locale = req.i18n.language
const { currency } = await SubscriptionController.getRecommendedCurrency(
req,
res
@@ -1076,14 +1075,8 @@ const _ProjectController = {
}
return {
monthly: formatCurrency(planPricing.monthly, currency, locale, true),
annual: formatCurrency(planPricing.annual, currency, locale, true),
monthlyTimesTwelve: formatCurrency(
planPricing.monthlyTimesTwelve,
currency,
locale,
true
),
monthly: planPricing.monthly,
annual: planPricing.annual,
}
},