Snellisci l'invito a trasmettere e invia l'email automatica.

Il form invito è sulla pagina squadra, genera il link e manda la mail; in caso di errore SMTP resta la copia manuale.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-15 20:02:25 +02:00
co-authored by Cursor
parent 3ed70b6999
commit db8b14ba4e
29 changed files with 448 additions and 97 deletions
+3 -33
View File
@@ -1,38 +1,8 @@
<%# Pagina legacy: l'invito è sulla pagina dettagli squadra. %>
<% content_for :title, t("team.invite.title", name: @team.name) %>
<% content_for :robots, "noindex, nofollow" %>
<div class="wrap" style="padding-top:20px">
<h1><%= t("team.invite.heading") %></h1>
<p>
<%= t("team.invite.assigned_label") %> <strong><%= @entitlements.staff_count_for("transmission") %> / <%= @entitlements.max_staff_transmission || "∞" %></strong>
<%= t("team.invite.per_team_note") %>
</p>
<p class="muted" style="max-width:640px">
<%= raw t("team.invite.info") %>
</p>
<% owner_membership = current_user.user_teams.find_by(team: @team) %>
<% if owner_membership&.staff_kind.blank? %>
<div class="card" style="max-width:520px;margin-bottom:16px">
<p style="margin:0 0 12px;color:#aaa;font-size:0.92rem">
<%= raw t("team.invite.self_assign_hint_html", email: current_user.email) %>
</p>
<%= button_to t("team.invite.self_assign_submit"), public_team_assign_self_staff_path(@team), method: :post, params: { staff_kind: "transmission" }, class: "btn btn-primary" %>
</div>
<% end %>
<div class="card" style="max-width:520px">
<h2 style="margin-top:0;font-size:1.05rem"><%= t("team.invite.invite_other_heading") %></h2>
<%= form_with url: public_team_invite_path(@team), method: :post do %>
<%= hidden_field_tag :staff_kind, "transmission" %>
<%= label_tag :email, t("team.invite.email_label") %>
<%= email_field_tag :email, params[:email], required: true %>
<%= submit_tag t("team.invite.submit"), class: "btn btn-primary" %>
<% end %>
<% if defined?(@invite_url) && @invite_url.present? %>
<p style="margin-top:16px"><%= t("team.invite.share_hint") %></p>
<code style="word-break:break-all;display:block;background:#0a0a0e;padding:12px;border-radius:8px"><%= @invite_url %></code>
<% end %>
</div>
<p><%= link_to t("team.back_to_details"), public_team_details_path(@team) %></p>
<p class="muted"><%= t("team.streaming_staff.invite_form_hint") %></p>
<p><%= link_to t("team.back_to_details"), public_team_details_path(@team, anchor: "invita-trasmissione"), class: "btn btn-primary" %></p>
</div>