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>
47 lines
2.3 KiB
Plaintext
47 lines
2.3 KiB
Plaintext
<% content_for :title, "Abbonamento — #{@club.name}" %>
|
|
<% content_for :robots, "noindex, nofollow" %>
|
|
|
|
<div class="wrap" style="padding-top:20px">
|
|
<h1>Abbonamento</h1>
|
|
<p>Società: <strong><%= @club.name %></strong> · Piano attuale: <strong><%= @entitlements.plan.name %></strong> (valido per tutte le squadre)</p>
|
|
|
|
<div class="plans">
|
|
<% @plans.each do |plan| %>
|
|
<div class="plan-card <%= 'featured' if plan.slug == @entitlements.plan.slug %>">
|
|
<h3><%= plan.name %></h3>
|
|
<% if plan.slug == "free" %>
|
|
<div class="plan-price">€0</div>
|
|
<% elsif plan.slug == "premium_light" %>
|
|
<div class="plan-price" style="color:#e53935">€40/anno</div>
|
|
<p style="color:#888;font-size:0.85rem">oppure €5/mese</p>
|
|
<% else %>
|
|
<div class="plan-price">€200/anno</div>
|
|
<p style="color:#888;font-size:0.85rem">oppure €20/mese</p>
|
|
<% end %>
|
|
<ul>
|
|
<li>Staff trasmissione: <%= plan.max_staff_transmission || "illimitato" %> / anno per squadra</li>
|
|
<li>Staff regia: <%= plan.max_staff_regia || "illimitato" %> / anno per squadra</li>
|
|
<li>Partite: <%= plan.concurrent_streams_limit || "illimitate" %> in contemporanea (tutta la società)</li>
|
|
<li>Replay: <%= plan.recordings_enabled? ? "#{plan.recording_days} giorni" : "no" %></li>
|
|
<li>YouTube: <% if plan.slug == "premium_light" %>Match TV Light<% elsif plan.youtube_enabled? %>canale società<% else %>no<% end %></li>
|
|
</ul>
|
|
<% if plan.slug == @entitlements.plan.slug %>
|
|
<span class="btn btn-secondary" style="opacity:0.7">Piano attuale</span>
|
|
<% elsif plan.slug == "free" %>
|
|
<p style="color:#888;font-size:0.85rem">Contatta il supporto per downgrade.</p>
|
|
<% elsif MatchLiveTv.stripe_enabled? %>
|
|
<%= link_to "Attiva #{plan.name}", public_club_checkout_path(@club, plan: plan.slug), class: "btn btn-primary" %>
|
|
<% else %>
|
|
<p style="color:#888">Stripe non configurato</p>
|
|
<% end %>
|
|
</div>
|
|
<% end %>
|
|
</div>
|
|
|
|
<% if @entitlements.premium_active? && MatchLiveTv.stripe_enabled? %>
|
|
<p style="margin-top:20px"><%= button_to "Gestisci su Stripe", public_club_portal_path(@club), class: "btn btn-secondary" %></p>
|
|
<% end %>
|
|
|
|
<p><%= link_to "← Società", public_club_path(@club) %></p>
|
|
</div>
|