<% member = local_assigns[:member] %> <% team = local_assigns[:team] %> <% form_url = member.persisted? ? public_team_roster_member_path(team, member) : public_team_roster_members_path(team) %> <% form_method = member.persisted? ? :patch : :post %> <% is_player = member.category == "player" %> <% player_roles = Sports::PlayerRoles.for_team(team) %> <% player_role = member.role_label if member.role_label.in?(player_roles) %> <%= form_with url: form_url, method: form_method, multipart: true, class: "roster-member-form card roster-sidebar__form", data: { roster_form: true } do %>

<%= member.persisted? ? "Modifica scheda" : "Aggiungi persona" %>

Compila i campi e salva per aggiornare l’organico.

<%= label_tag "team_roster_member[category]", "Gruppo" %> <%= select_tag "team_roster_member[category]", options_for_select(roster_category_options, member.category), data: { roster_category: true } %> <%= label_tag "team_roster_member[full_name]", "Nome e cognome" %> <%= text_field_tag "team_roster_member[full_name]", member.full_name, required: true, placeholder: "es. Mario Rossi" %>
> <%= label_tag "team_roster_member[role_label]", "Ruolo in campo" %> <%= select_tag "team_roster_member[role_label]", roster_player_role_options(team, player_role), data: { roster_role_player: true }, disabled: !is_player %>
> <%= label_tag "team_roster_member[role_label_other]", "Ruolo (opzionale)" %> <%= text_field_tag "team_roster_member[role_label_other]", (member.role_label unless is_player), placeholder: "es. Capo allenatore, Presidente, Massaggiatore", data: { roster_role_other: true }, disabled: is_player %>
> <%= label_tag "team_roster_member[jersey_number]", "Numero maglia" %> <%= number_field_tag "team_roster_member[jersey_number]", member.jersey_number, min: 1, max: 99, placeholder: "es. 7", data: { roster_jersey: true }, disabled: !is_player %>
<%= label_tag "team_roster_member[bio]", "Descrizione breve" %> <%= text_area_tag "team_roster_member[bio]", member.bio, rows: 3, placeholder: "Breve presentazione per la scheda…" %> <%= label_tag "team_roster_member[photo_file]", "Foto" %> <% if member.photo_url.present? %>
<%= roster_person_avatar(member, team, size: 72) %>
<% end %> <%= file_field_tag "team_roster_member[photo_file]", accept: "image/png,image/jpeg,image/webp" %>

Senza foto verrà mostrato un avatar con i colori della squadra.

<%= submit_tag (member.persisted? ? "Salva scheda" : "Aggiungi all'organico"), class: "btn btn-primary" %> <% end %>