@php $data = is_string($taxes_subdomain->data) ? json_decode($taxes_subdomain->data) : $taxes_subdomain->data; $logo = $data->logo ?? null; $nombre = $taxes_subdomain->nombre_fantasia ?: $taxes_subdomain->subdomain; $labelFase = function ($f) { return [ 'round_robin' => 'Round robin', '32avos' => '32avos', '16avos' => '16avos', 'octavos' => 'Octavos', 'cuartos' => 'Cuartos', 'semifinal' => 'Semifinal', 'final' => 'Final', 'tercer_puesto' => '3er puesto', 'grupos' => 'Grupos', ][$f] ?? $f; }; $labelEstado = function ($e) { return [ 'pendiente_disponibilidad' => 'Pendiente', 'sin_match' => 'Sin match', 'confirmado' => 'Confirmado', 'jugado' => 'Jugado', 'walkover' => 'Walkover', 'suspendido' => 'Suspendido', 'cancelado' => 'Cancelado', ][$e] ?? $e; }; // Iniciales de un nombre para fallback de avatar $iniciales = function ($name) { $t = trim($name ?? ''); if (!$t) return '?'; $parts = preg_split('/\s+/', $t); return strtoupper(mb_substr($parts[0] ?? '', 0, 1) . mb_substr($parts[count($parts)-1] ?? '', 0, 1)); }; // Render del avatar de un participante (single = 1, pareja = 2 overlap) $avatar = function ($part) use ($iniciales) { if (!$part) return ''; $cell = function ($url, $name) use ($iniciales) { if ($url) { return ''.e($name ?? '').''; } return ''.e($iniciales($name)).''; }; if (($part['tipo'] ?? null) === 'pareja') { $urls = $part['foto_urls'] ?? [null, null]; $names = array_map('trim', explode('/', $part['nombre'] ?? '')); return ''.$cell($urls[0] ?? null, $names[0] ?? '').$cell($urls[1] ?? null, $names[1] ?? '').''; } return $cell($part['foto_url'] ?? null, $part['nombre'] ?? ''); }; @endphp {{ $torneo->nombre }} · {{ $nombre }} @include('taxes_subdomain.layouts.subdomain.tenis._estilos') @include('taxes_subdomain.layouts.subdomain.tenis._nav', ['navLogo' => $logo, 'navNombre' => $nombre, 'activo' => 'torneos'])
Volver a torneos
@if($torneo->foto_url) {{ $torneo->nombre }} @endif

{{ $torneo->nombre }}

@if($torneo->tipo){{ $torneo->tipo->nombre }}@endif @if($torneo->categoria)Cat. {{ $torneo->categoria->nombre }}@endif @if($torneo->genero) {{ ['MASC' => 'Masculino', 'FEME' => 'Femenino', 'MIXT' => 'Mixto'][$torneo->genero] ?? $torneo->genero }} @endif {{ \Carbon\Carbon::parse($torneo->fecha_inicio)->format('d/m/Y') }} → {{ \Carbon\Carbon::parse($torneo->fecha_fin)->format('d/m/Y') }} @if($torneo->sede) {{ $torneo->sede->nombre }} @endif
@if(!empty($ganador))
Campeón
{!! $avatar($ganador) !!} {{ $ganador['nombre'] }}
@endif

Inscriptos ({{ $inscripciones->count() }})

@if($inscripciones->isEmpty())
Aún no hay inscripciones.
@else
@foreach($inscripciones->unique('tenis_jugador_id') as $i) @php $jug = $i->jugador; $foto = $jug ? $jug->foto_url : null; $nombreJ = $jug ? $jug->nombre : '—'; @endphp
@if($foto) {{ $nombreJ }} @else @endif
{{ $nombreJ }} @if($jug && $jug->categoria) {{ $jug->categoria->nombre }} @endif @if($i->pareja)
Pareja: @if($i->pareja->jugador_1_id === $i->tenis_jugador_id && $i->pareja->jugador2) {{ $i->pareja->jugador2->nombre }} @elseif($i->pareja->jugador1) {{ $i->pareja->jugador1->nombre }} @endif
@endif
@endforeach
@endif @if(!empty($tablasGrupos))

Fase de grupos

@foreach($tablasGrupos as $zona => $filas)
Grupo {{ $zona }}
@foreach($filas as $i => $f) @endforeach
Jugador PJ G P Dif
{{ $f['nombre'] }} {{ $f['pj'] }} {{ $f['pg'] }} {{ $f['pp'] }} {{ $f['diff'] > 0 ? '+'.$f['diff'] : $f['diff'] }}
@endforeach
@endif

Fixture y resultados

@if(count($rondas) === 0)
El fixture todavía no se generó.
@elseif($esRoundRobin)
@foreach($rondas[0]['partidos'] as $p)
{{ $labelFase($p->fase) }} · #{{ $p->numero_partido }}
{!! $avatar($p->participante_a) !!} {{ $p->participante_a['nombre'] ?? '—' }} @if($p->sets && count($p->sets) > 0) {{ collect($p->sets)->pluck('games_a')->implode(' | ') }} @endif
{!! $avatar($p->participante_b) !!} {{ $p->participante_b['nombre'] ?? '—' }} @if($p->sets && count($p->sets) > 0) {{ collect($p->sets)->pluck('games_b')->implode(' | ') }} @endif
@endforeach
@else
@foreach($rondas as $ronda)
{{ $labelFase($ronda['fase']) }}
@foreach($ronda['partidos'] as $p)
#{{ $p->numero_partido }}
{!! $avatar($p->participante_a) !!} {{ $p->participante_a['nombre'] ?? '—' }} @if($p->sets && count($p->sets) > 0) {{ collect($p->sets)->pluck('games_a')->implode('·') }} @endif
{!! $avatar($p->participante_b) !!} {{ $p->participante_b['nombre'] ?? '—' }} @if($p->sets && count($p->sets) > 0) {{ collect($p->sets)->pluck('games_b')->implode('·') }} @endif
@endforeach
@endforeach
@endif
@include('taxes_subdomain.layouts.subdomain.tenis._publicidad_taxes')