use App\Http\Controllers\SuperAdmin\Ramadan\RamadanSystemController; Route::prefix('superadmin/ramadan') ->name('superadmin.ramadan.') ->middleware(['web', 'auth']) ->group(function () { Route::get('/', [RamadanSystemController::class, 'index'])->name('index'); /* ========================= | Competitions ========================= */ Route::prefix('competitions')->name('competitions.')->group(function () { Route::get('/', [RamadanSystemController::class, 'competitionsIndex'])->name('index'); // ✅ لازم ترجع page keys: financial / records / media (مثل app.blade.php) Route::get('/financial', [RamadanSystemController::class, 'competitionsFinancial'])->name('financial'); Route::get('/records', [RamadanSystemController::class, 'competitionsRecords'])->name('records'); Route::get('/media', [RamadanSystemController::class, 'competitionsMedia'])->name('media'); Route::post('/', [RamadanSystemController::class, 'competitionStore'])->name('store'); Route::post('/link', [RamadanSystemController::class, 'competitionLink'])->name('link'); Route::delete('/unlink/{competitionId}', [RamadanSystemController::class, 'competitionUnlink'])->name('unlink'); Route::get('/scores', [RamadanSystemController::class, 'scoresIndex']) ->name('scores.index'); // ✅ prizes (ramadan_competition_prizes) Route::post('/{competitionId}/prizes', [RamadanSystemController::class, 'prizeStore'])->name('prizes.store'); Route::delete('/prizes/{id}', [RamadanSystemController::class, 'prizeDestroy'])->name('prizes.destroy'); // ✅ finance (ramadan_competition_financial_records) Route::post('/{competitionId}/finance', [RamadanSystemController::class, 'financeStore'])->name('finance.store'); Route::delete('/finance/{id}', [RamadanSystemController::class, 'financeDestroy'])->name('finance.destroy'); // ✅ media (ramadan_competition_media) Route::post('/{competitionId}/media', [RamadanSystemController::class, 'mediaStore'])->name('media.store'); Route::delete('/media/{id}', [RamadanSystemController::class, 'mediaDestroy'])->name('media.destroy'); }); /* ========================= | Log ========================= */ Route::get('/log', [RamadanSystemController::class, 'logIndex'])->name('log.index'); Route::post('/log', [RamadanSystemController::class, 'logStore'])->name('log.store'); Route::delete('/log/{id}',[RamadanSystemController::class, 'logDestroy'])->name('log.destroy'); /* ========================= | Participants + Stats ========================= */ Route::get('/participants', [RamadanSystemController::class, 'participantsIndex'])->name('participants.index'); Route::post('/participants', [RamadanSystemController::class, 'participantsStore'])->name('participants.store'); Route::delete('/participants/{id}', [RamadanSystemController::class, 'participantsDestroy'])->name('participants.destroy'); Route::get('/participants/stats', [RamadanSystemController::class, 'participantsStats'])->name('participants.stats'); /* ========================= | Top ========================= */ Route::get('/top-time', [RamadanSystemController::class, 'topTime'])->name('top.time'); Route::get('/top-competitions', [RamadanSystemController::class, 'topCompetitions'])->name('top.competitions'); Route::get('/visitors', [RamadanSystemController::class, 'visitorsIndex'])->name('visitors.index'); /* ========================= | Baba Ghanouj ========================= */ Route::get('/baba-ghanouj', [RamadanSystemController::class, 'babaGhanoujIndex'])->name('baba-ghanouj.index'); Route::post('/baba-ghanouj', [RamadanSystemController::class, 'babaGhanoujStore'])->name('baba-ghanouj.store'); Route::delete('/baba-ghanouj/{id}', [RamadanSystemController::class, 'babaGhanoujDestroy'])->name('baba-ghanouj.destroy'); /* ========================= | Schedule ========================= */ Route::get('/schedule', [RamadanSystemController::class, 'scheduleIndex'])->name('schedule.index'); Route::post('/schedule', [RamadanSystemController::class, 'scheduleStore'])->name('schedule.store'); Route::post('/schedule/{slotId}/assign',[RamadanSystemController::class, 'scheduleAssign'])->name('schedule.assign'); Route::delete('/schedule/assignments/{id}', [RamadanSystemController::class, 'scheduleUnassign'])->name('schedule.unassign'); /* ========================= | Certificates ========================= */ Route::get('/certificates', [RamadanSystemController::class, 'certificatesIndex'])->name('certificates.index'); Route::post('/certificates', [RamadanSystemController::class, 'certificatesStore'])->name('certificates.store'); Route::delete('/certificates/{id}', [RamadanSystemController::class, 'certificatesDestroy'])->name('certificates.destroy'); /* ========================= | Honors ========================= */ Route::get('/honors', [RamadanSystemController::class, 'honorsIndex'])->name('honors.index'); Route::post('/honors/create', [RamadanSystemController::class, 'honorCreateAndLink'])->name('honors.create'); // ✅ مهم لواجهة honors Route::post('/honors/link', [RamadanSystemController::class, 'honorLinkStore'])->name('honors.link.store'); Route::delete('/honors/link/{id}', [RamadanSystemController::class, 'honorLinkDestroy'])->name('honors.link.destroy'); /* ========================= | Alerts ========================= */ Route::get('/alerts', [RamadanSystemController::class, 'alertsIndex'])->name('alerts.index'); Route::post('/alerts', [RamadanSystemController::class, 'alertsStore'])->name('alerts.store'); Route::post('/alerts/{id}/send',[RamadanSystemController::class, 'alertsSend'])->name('alerts.send'); Route::delete('/alerts/{id}', [RamadanSystemController::class, 'alertsDestroy'])->name('alerts.destroy'); /* ========================= | Missions ========================= */ Route::get('/missions', [RamadanSystemController::class, 'missionsIndex'])->name('missions.index'); Route::post('/missions', [RamadanSystemController::class, 'missionsStore'])->name('missions.store'); Route::post('/missions/{missionId}/assign', [RamadanSystemController::class, 'missionsAssign'])->name('missions.assign'); Route::post('/missions/assignments/{id}/done',[RamadanSystemController::class, 'missionsMarkDone'])->name('missions.done'); /* ========================= | Archive ========================= */ Route::get('/archive', [RamadanSystemController::class, 'archiveIndex'])->name('archive.index'); Route::post('/archive', [RamadanSystemController::class, 'archiveStore'])->name('archive.store'); Route::delete('/archive/{id}', [RamadanSystemController::class, 'archiveDestroy'])->name('archive.destroy'); });Route::prefix('superadmin')->middleware(['auth'])->group(function () { Route::prefix('proactive-heroes')->name('superadmin.proactiveHeroes.')->group(function () { Route::get('/', [ProactiveHeroesController::class, 'index'])->name('index'); Route::get('/item/{type}/{id}', [ProactiveHeroesController::class, 'show'])->name('show'); // JSON drawer Route::post('/item/{type}/{id}/status', [ProactiveHeroesController::class, 'updateStatus'])->name('updateStatus'); Route::post('/bulk', [ProactiveHeroesController::class, 'bulkDecision'])->name('bulk'); }); });