Files
MatchLiveTv/backend/app/helpers/roster_helper.rb
Emiliano Frascaro 34c97f4447 Fix sport squadra su partite basket e ruoli organico per board.
Le partite ereditano lo sport_key della squadra alla creazione invece del default pallavolo; l'organico mostra ruoli per board (basket, volley, timed) e il wizard Android usa lo sport del team per overlay e icona.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-09 22:32:36 +02:00

34 lines
1.0 KiB
Ruby

module RosterHelper
def roster_person_avatar(person, team, size: 96)
primary = team.effective_primary_color
secondary = team.effective_secondary_color
style = "--avatar-primary:#{primary};--avatar-secondary:#{secondary};width:#{size}px;height:#{size}px"
if person.photo_url.present?
image_tag person.photo_url, alt: person.full_name, class: "roster-avatar roster-avatar--photo",
style: style, width: size, height: size
else
tag.div(
person.initials,
class: "roster-avatar roster-avatar--placeholder",
style: "#{style};font-size:#{(size * 0.34).round}px",
aria: { label: person.full_name }
)
end
end
def roster_category_options
TeamRosterMember::DISPLAY_ORDER.map do |cat|
[TeamRosterMember::CATEGORY_LABELS[cat], cat]
end
end
def roster_player_role_options(team, selected = nil)
roles = Sports::PlayerRoles.for_team(team)
options_for_select(
[["— Seleziona ruolo —", ""]] + roles.map { |r| [r, r] },
selected
)
end
end