Hora | @foreach ($diasUsados as $dia){{ $diasNombre[$dia] }} | @endforeach|
---|---|---|
{{ $franja['inicio'] }} - {{ $franja['fin'] }} | @foreach ($diasUsados as $dia) @php $yaOcupado = $bloquesOcupados[$dia][$franja['inicio']] ?? false; if ($yaOcupado) continue; $bloque = $bloquesPorDia[$dia]->first(fn($b) => $b['inicio'] == $franja['inicio']); @endphp @if ($bloque) @php $rowspan = collect($franjas)->filter(fn($f) => $f['inicio'] >= $bloque['inicio'] && $f['fin'] <= $bloque['fin'])->count(); foreach ($franjas as $f) { if ($f['inicio'] >= $bloque['inicio'] && $f['fin'] <= $bloque['fin']) { $bloquesOcupados[$dia][$f['inicio']]=true; } } @endphp
{{ $bloque['materia'] }}
{{ $bloque['maestro'] }}
{{-- (Opcional) Borrar toda la materia del grupo
--}}
|
@php
$bloquesPorDia[$dia] = $bloquesPorDia[$dia]->filter(fn($b) => $b !== $bloque)->values();
@endphp
@elseif (! $bloquesPorDia[$dia]->contains(fn($b) => $b['inicio'] <= $franja['inicio'] &&
$b['fin']> $franja['inicio']))
@endif @endforeach |