29 lines
806 B
PHP
29 lines
806 B
PHP
|
|
<?php
|
||
|
|
|
||
|
|
namespace App\Http\Controllers;
|
||
|
|
|
||
|
|
use App\Models\Seance;
|
||
|
|
use Illuminate\Support\Facades\Auth;
|
||
|
|
use Illuminate\View\View;
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Vue transverse de toutes les classes du prof (séparation vitrine/
|
||
|
|
* application, 2026-10-13) : avant, il fallait ouvrir chaque classe pour
|
||
|
|
* savoir où une séance était en cours.
|
||
|
|
*/
|
||
|
|
class SeancesEnDirectController extends Controller
|
||
|
|
{
|
||
|
|
public function show(): View
|
||
|
|
{
|
||
|
|
$prof = Auth::guard('web')->user();
|
||
|
|
$classeIds = $prof->classes()->whereNull('archivee_a')->pluck('id');
|
||
|
|
|
||
|
|
$seances = Seance::whereIn('classe_id', $classeIds)
|
||
|
|
->whereIn('statut', [Seance::SALLE_ATTENTE, Seance::EN_COURS])
|
||
|
|
->with(['classe', 'lab'])
|
||
|
|
->get();
|
||
|
|
|
||
|
|
return view('seances-en-direct', ['seances' => $seances]);
|
||
|
|
}
|
||
|
|
}
|