Club come entità principale, branding e fix infrastruttura streaming.

Introduce clubs con abbonamento, branding Active Storage e flusso registrazione società; corregge healthcheck MediaMTX (immagine distroless) e allinea dominio produzione matchlivetv.it.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-05-27 09:16:24 +02:00
parent 471291b2c4
commit 4083bc5dee
53 changed files with 1120 additions and 197 deletions

View File

@@ -92,14 +92,24 @@ Rails.application.routes.draw do
post "password/forgot", to: "password_resets#create"
get "password/reset", to: "password_resets#edit", as: :password_reset
patch "password/reset", to: "password_resets#update"
get "teams/new", to: "teams#new"
post "teams", to: "teams#create"
get "clubs/new", to: "clubs#new", as: :new_club
post "clubs", to: "clubs#create"
get "clubs/:id", to: "clubs#show", as: :club
get "clubs/:id/edit", to: "clubs#edit", as: :edit_club
patch "clubs/:id", to: "clubs#update"
get "clubs/:id/billing", to: "clubs#billing", as: :club_billing
get "clubs/:id/checkout", to: "clubs#checkout", as: :club_checkout
post "clubs/:id/portal", to: "clubs#portal", as: :club_portal
get "teams/new", to: redirect("/clubs/new")
get "clubs/:club_id/teams/new", to: "teams#new", as: :new_club_team
post "clubs/:club_id/teams", to: "teams#create", as: :club_teams
get "teams/:id/dashboard", to: "teams#dashboard", as: :team_dashboard
get "teams/:id/billing", to: "teams#billing", as: :team_billing
get "teams/:id/checkout", to: "teams#checkout", as: :team_checkout
post "teams/:id/portal", to: "teams#portal", as: :team_portal
get "teams/:id/edit", to: "teams#edit", as: :edit_team
patch "teams/:id", to: "teams#update"
get "teams/:id/invite", to: "teams#invite", as: :team_invite
post "teams/:id/invite", to: "teams#create_invitation"
post "teams/:id/staff/self", to: "teams#assign_self_staff", as: :team_assign_self_staff
delete "teams/:id/staff/self", to: "teams#clear_self_staff", as: :team_clear_self_staff
delete "teams/:id/members/:user_id", to: "teams#remove_member", as: :team_remove_member
delete "teams/:id/invitations/:invitation_id", to: "teams#destroy_invitation", as: :team_destroy_invitation
get "join/:token", to: "invitations#show", as: :invitation