{# Jedna strona meczu na liscie kolejki: nazwa strony i druzyny, z ktorych sie
sklada.
Chip i znaleziony zawodnik sa sprawa pojedynczej druzyny, wiec kazda niesie
wlasne znaczki tuz przy swojej nazwie — dzieki temu przy wyszukiwaniu widac,
ktora konkretnie ma zawodnika, a nie tylko ze "ktos po tej stronie".
Wlasna nazwa strony ("4Stars" w 4x4) stoi z przodu, a druzyny ida za nia
drobniejszym drukiem. Gdy nazwa powstala ze sklejenia nazw druzyn
(App\Controller\FixtureController::createNamedSide), nie powtarzamy jej —
byloby to to samo dwa razy.
Oczekuje: view (App\League\MatchView), squad (App\Entity\Squad),
highlight (App\League\PlayerMatchHighlight). #}
{% import 'fixture/_chip.html.twig' as chip %}
{%- set composed = squad.entries|map(entry => entry.teamName)|join(' + ') -%}
{%- if squad.name != composed -%}
{{ squad.name }}
{%- endif -%}
{%- for entry in squad.entries -%}
{%- set hit = highlight.forEntry(entry.id) -%}
{%- set snapshot = view.snapshotFor(entry.id) -%}
{%- if not loop.first %} + {% endif -%}
{#- Nazwa i jej znaczek chipa stanowia jedna calosc: bez tego przy zawijaniu
wiersza znaczek potrafil zostac sam w nowej linii, oderwany od druzyny,
do ktorej nalezy. -#}
{#- Trafienie wyszukiwania bierze w ramke sama nazwe druzyny, bez osobnej
plakietki obok — ramka mowi to samo, a nie wydluza wiersza. Rodzaj
obramowania (ciagle albo przerywane) niesie roznice miedzy skladem a
lawka, wiec nie zalezy ona wylacznie od koloru; pelny opis siedzi w
title, a opaska kapitanska dopisuje sie do nazwy. -#}
{%- if hit -%}
{%- set starting = 'starting' == hit.status.value -%}
{{- entry.teamName }}{% if hit.captainLabel %} · {{ hit.captainLabel }}{% endif -%}
{%- else -%}
{{ entry.teamName }}
{%- endif -%}
{#- Znaczek chipa zielenieje razem z nazwa: przy trafieniu cala druzyna ma
czytac sie jako jedna calosc, a nie nazwa osobno i chip osobno. -#}
{%- if snapshot and snapshot.activeChip %} {{ chip.label(snapshot.activeChip) }}{% endif -%}
{%- endfor -%}