ajoute les devoirs maison (chantier vrai cockpit, étape 3) : rendu en texte libre, suivi des rendus, notation

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Adam Belkacemi 2026-10-13 12:44:00 +02:00
parent bd74eaf20f
commit 33531de44d
17 changed files with 582 additions and 2 deletions

View file

@ -5,6 +5,8 @@ use App\Http\Controllers\BanqueQuizController;
use App\Http\Controllers\ClasseController;
use App\Http\Controllers\ConsoleController;
use App\Http\Controllers\CorrectionController;
use App\Http\Controllers\DevoirController;
use App\Http\Controllers\DevoirEleveController;
use App\Http\Controllers\EleveTableauDeBordController;
use App\Http\Controllers\InscriptionController;
use App\Http\Controllers\QuizController;
@ -106,6 +108,10 @@ Route::middleware(['auth:eleve', 'session.unique:eleve'])->group(function () {
Route::post('/sessions-quiz/{session}/repondre', [QuizEleveController::class, 'repondre'])
->middleware('throttle:30,1')
->name('sessions-quiz.repondre');
// Chantier « vrai cockpit », étape 3 : Devoirs maison.
Route::get('/devoirs/{devoir}', [DevoirEleveController::class, 'show'])->name('devoirs.eleve.show');
Route::post('/devoirs/{devoir}/rendre', [DevoirEleveController::class, 'rendre'])->name('devoirs.eleve.rendre');
});
// --- Espace prof (protégé, session unique) ---
@ -149,4 +155,11 @@ Route::middleware(['auth:web', 'session.unique:web'])->group(function () {
Route::get('/banque-quiz', [BanqueQuizController::class, 'index'])->name('banque-quiz.index');
Route::post('/mes-classes/{classe}/quiz/{quiz}/partager', [BanqueQuizController::class, 'partager'])->name('mes-classes.quiz.partager');
Route::post('/banque-quiz/{quiz}/dupliquer', [BanqueQuizController::class, 'dupliquer'])->name('banque-quiz.dupliquer');
// Chantier « vrai cockpit », étape 3 : Devoirs maison.
Route::get('/mes-classes/{classe}/devoirs', [DevoirController::class, 'index'])->name('mes-classes.devoirs.index');
Route::post('/mes-classes/{classe}/devoirs', [DevoirController::class, 'store'])->name('mes-classes.devoirs.store');
Route::get('/mes-classes/{classe}/devoirs/{devoir}', [DevoirController::class, 'show'])->name('mes-classes.devoirs.show');
Route::post('/mes-classes/{classe}/devoirs/{devoir}/supprimer', [DevoirController::class, 'destroy'])->name('mes-classes.devoirs.destroy');
Route::post('/mes-classes/{classe}/devoirs/{devoir}/rendus/{rendu}/noter', [DevoirController::class, 'noter'])->name('mes-classes.devoirs.noter');
});