name('index'); // Authentication routes Route::controller(LoginController::class)->group(function () { Route::get('login', 'index')->name('login'); Route::post('login', 'login'); Route::post('/logout', 'logout')->name('logout'); }); // Authenticated routes Route::middleware(['auth'])->group(function () { // Dashboard Route::get('/dashboard', [AdminController::class, 'index'])->name('admin.dashboard'); // Admin prefix routes Route::prefix('admin')->group(function () { // Dashboard Route::get('/dashboard', [AdminController::class, 'index'])->name('admin.dashboard'); // Siswa Route::controller(SiswaController::class)->group(function () { Route::get('/siswa', 'index2')->name('admin.siswa'); Route::get('/siswa/create', 'create')->name('siswa.create'); Route::post('/siswa', 'store')->name('siswa.store'); }); // Guru Route::get('/guru', [GuruController::class, 'index'])->name('admin.guru'); // Kelas Route::resource('kelas', KelasController::class)->parameters([ 'kelas' => 'kelas', ])->names([ 'index' => 'admin.kelas.index', 'create' => 'admin.kelas.create', 'store' => 'admin.kelas.store', 'edit' => 'admin.kelas.edit', 'update' => 'admin.kelas.update', 'destroy' => 'admin.kelas.destroy', ]); // Jurusan Route::resource('jurusan', JurusanController::class)->names([ 'index' => 'admin.jurusan.index', 'create' => 'admin.jurusan.create', 'store' => 'admin.jurusan.store', 'edit' => 'admin.jurusan.edit', 'update' => 'admin.jurusan.update', 'destroy' => 'admin.jurusan.destroy', ]); // Ruangan Route::resource('ruangan', RuanganController::class)->names([ 'index' => 'admin.ruangan.index', 'create' => 'admin.ruangan.create', 'store' => 'admin.ruangan.store', 'edit' => 'admin.ruangan.edit', 'update' => 'admin.ruangan.update', 'destroy' => 'admin.ruangan.destroy', ]); // Presensi Route::controller(PresensiController::class)->group(function () { Route::get('/presensi/siswa', 'indexSiswa')->name('admin.presensi.siswa'); Route::get('/presensi/guru', 'indexGuru')->name('admin.presensi.guru'); }); // Laporan Route::get('/laporan', [LaporanController::class, 'index'])->name('admin.laporan'); // Bell System Route::prefix('bel')->controller(BelController::class)->group(function () { Route::get('/', 'index')->name('bel.index'); Route::get('/create', 'create')->name('bel.create'); Route::post('/', 'store')->name('bel.store'); Route::get('/{id}/edit', 'edit')->name('bel.edit'); Route::put('/{id}', 'update')->name('bel.update'); Route::delete('/{id}', 'destroy')->name('bel.delete'); Route::delete('/', 'deleteAll')->name('bel.delete-all'); }); // Announcement System Route::prefix('pengumuman')->group(function () { Route::get('/', [AnnouncementController::class, 'index'])->name('announcements.index'); Route::post('/send', [AnnouncementController::class, 'send'])->name('announcements.send'); Route::post('/stop-manual', [AnnouncementController::class, 'stopManual'])->name('announcements.stop-manual'); Route::get('/active', [AnnouncementController::class, 'checkActive'])->name('announcements.active'); Route::get('/mqtt-status', [AnnouncementController::class, 'mqttStatus'])->name('announcements.mqttStatus'); Route::get('/history', [AnnouncementController::class, 'history'])->name('announcements.history'); }); }); });