Untitled

 avatar
unknown
plain_text
10 months ago
2.4 kB
12
Indexable
<?php

use App\Livewire\Auth\Login;
use App\Livewire\Auth\Verify;
use App\Livewire\Auth\Register;
use Illuminate\Support\Facades\Route;
use App\Livewire\Auth\Passwords\Email;
use App\Livewire\Auth\Passwords\Reset;
use App\Livewire\Auth\Passwords\Confirm;
use App\Http\Controllers\Auth\LogoutController;
use App\Http\Controllers\Auth\EmailVerificationController;
use App\Http\Controllers\LaporanController; // Import controller LaporanController

// 🔹 Root route → redirect ke login
Route::get('/', function () {
    return redirect()->route('login');
});

// 🔹 Guest routes (hanya untuk yang belum login)
Route::middleware('guest')->group(function () {
    Route::get('login', Login::class)->name('login');
    Route::get('register', Register::class)->name('register');

    // Password reset
    Route::get('password/reset', Email::class)->name('password.request');
    Route::get('password/reset/{token}', Reset::class)->name('password.reset');
});

// 🔹 Authenticated routes (hanya untuk user yang sudah login)
Route::middleware('auth')->group(function () {
    // Homepage user → beri nama route 'home'
    Route::get('/homepage', fn () => view('homepage'))->name('home');
      Route::post('logout', LogoutController::class)->name('logout');


    // Dashboard admin
    Route::get('/dashboard', [LaporanController::class, 'index'])->name('admin.dashboard');

    // Halaman input laporan
    Route::get('/input', [LaporanController::class, 'create'])->name('input');
    Route::post('/input', [LaporanController::class, 'store'])->name('laporan.store');

    // Update status laporan
    Route::patch('/laporan/{laporan}/status', [LaporanController::class, 'updateStatus'])->name('laporan.updateStatus');

    // Detail laporan
    Route::get('/laporan/{laporan}', [LaporanController::class, 'show'])->name('laporan.show');

    // Email verification
    Route::get('email/verify', Verify::class)
        ->middleware('throttle:6,1')
        ->name('verification.notice');

    Route::get('email/verify/{id}/{hash}', EmailVerificationController::class)
        ->middleware('signed')
        ->name('verification.verify');

    // Confirm password
    Route::get('password/confirm', Confirm::class)->name('password.confirm');

    // Logout
    Route::post('logout', LogoutController::class)->name('logout');
});
Editor is loading...
Leave a Comment