Billing upgrade/downgrade, inviti in app e diretta YouTube da mobile.

Upgrade Stripe con addebito immediato; downgrade programmato a fine periodo.
UX billing più sobria con box info; icone piani. API inviti e OAuth YouTube
per staff trasmissione; deep link join; scelta partita programmata o nuova.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-06-02 22:15:27 +02:00
parent 2cb267f991
commit 566104aff4
49 changed files with 1615 additions and 173 deletions

View File

@@ -1,4 +1,14 @@
module ApplicationHelper
PLAN_ICONS = {
"free" => "fa-solid fa-seedling",
"premium_light" => "fa-solid fa-rocket",
"premium_full" => "fa-solid fa-crown"
}.freeze
def plan_icon_class(plan)
PLAN_ICONS[plan.slug] || "fa-solid fa-circle"
end
# Data/ora nel fuso dell'app (Europe/Rome) e nella lingua del sito.
def l_local(date_or_time, format: :long)
return nil if date_or_time.blank?