diff --git a/app/Http/Controllers/AuthController.php b/app/Http/Controllers/AuthController.php index 0fdba86..ce17387 100644 --- a/app/Http/Controllers/AuthController.php +++ b/app/Http/Controllers/AuthController.php @@ -90,4 +90,14 @@ public function authenticate(Request $request) 'email_username' => ['Email atau username salah.'], ]); } + + public function logout(Request $request) + { + Auth::logout(); + + $request->session()->invalidate(); + $request->session()->regenerateToken(); + + return redirect()->intended(''); + } } diff --git a/app/Http/Controllers/Web/AkselerasiDashboardController.php b/app/Http/Controllers/Web/AkselerasiDashboardController.php index fe5d2f0..8533ae2 100644 --- a/app/Http/Controllers/Web/AkselerasiDashboardController.php +++ b/app/Http/Controllers/Web/AkselerasiDashboardController.php @@ -4,11 +4,15 @@ use App\Http\Controllers\Controller; use Illuminate\Http\Request; +use Illuminate\Support\Facades\Gate; class AkselerasiDashboardController extends Controller { public function index() { + if (!Gate::allows('super_admin') && !Gate::allows('admin')) { + abort(403); + } return view('dashboard.akselerasi'); } } diff --git a/app/Http/Controllers/Web/HilirisasiDashboardController.php b/app/Http/Controllers/Web/HilirisasiDashboardController.php index a6eaa9d..5215c46 100644 --- a/app/Http/Controllers/Web/HilirisasiDashboardController.php +++ b/app/Http/Controllers/Web/HilirisasiDashboardController.php @@ -4,11 +4,15 @@ use App\Http\Controllers\Controller; use Illuminate\Http\Request; +use Illuminate\Support\Facades\Gate; class HilirisasiDashboardController extends Controller { public function index() { + if (!Gate::allows('super_admin') && !Gate::allows('admin')) { + abort(403); + } return view('dashboard.hilirisasi'); } } diff --git a/app/Http/Controllers/Web/KonektivitasDashboardController.php b/app/Http/Controllers/Web/KonektivitasDashboardController.php index 22df53f..7a49613 100644 --- a/app/Http/Controllers/Web/KonektivitasDashboardController.php +++ b/app/Http/Controllers/Web/KonektivitasDashboardController.php @@ -4,11 +4,15 @@ use App\Http\Controllers\Controller; use Illuminate\Http\Request; +use Illuminate\Support\Facades\Gate; class KonektivitasDashboardController extends Controller { public function index() { + if (!Gate::allows('super_admin') && !Gate::allows('admin')) { + abort(403); + } return view('dashboard.konektivitas'); } } diff --git a/app/Http/Controllers/Web/ResiliensiDashboardController.php b/app/Http/Controllers/Web/ResiliensiDashboardController.php index 3e5a6c5..8495cbd 100644 --- a/app/Http/Controllers/Web/ResiliensiDashboardController.php +++ b/app/Http/Controllers/Web/ResiliensiDashboardController.php @@ -4,11 +4,15 @@ use App\Http\Controllers\Controller; use Illuminate\Http\Request; +use Illuminate\Support\Facades\Gate; class ResiliensiDashboardController extends Controller { public function index() { + if (!Gate::allows('super_admin') && !Gate::allows('admin')) { + abort(403); + } return view('dashboard.resiliensi'); } } diff --git a/app/Http/Controllers/Web/SummaryDashboardController.php b/app/Http/Controllers/Web/SummaryDashboardController.php index f09dab7..621b814 100644 --- a/app/Http/Controllers/Web/SummaryDashboardController.php +++ b/app/Http/Controllers/Web/SummaryDashboardController.php @@ -4,11 +4,15 @@ use App\Http\Controllers\Controller; use Illuminate\Http\Request; +use Illuminate\Support\Facades\Gate; class SummaryDashboardController extends Controller { public function index() { + // if (!Gate::allows('super_admin') && !Gate::allows('admin')) { + // abort(403); + // } return view('dashboard.summary'); } } diff --git a/resources/views/layout/main.blade.php b/resources/views/layout/main.blade.php index af4c508..d3f620f 100644 --- a/resources/views/layout/main.blade.php +++ b/resources/views/layout/main.blade.php @@ -78,6 +78,15 @@ + + @stack('scripts') \ No newline at end of file diff --git a/resources/views/layout/navbar.blade.php b/resources/views/layout/navbar.blade.php index b93f353..c4d4ad9 100644 --- a/resources/views/layout/navbar.blade.php +++ b/resources/views/layout/navbar.blade.php @@ -464,8 +464,8 @@ class="nav-link dropdown-toggle hide-arrow p-0"
-
John Doe
- Admin +
{{ Auth::user()->name }}
+ {{ Auth::user()->email }}
@@ -513,11 +513,14 @@ class="nav-link dropdown-toggle hide-arrow p-0"
  • - + Logout
    +
    + @csrf +
  • diff --git a/routes/web.php b/routes/web.php index 8faf403..bc5d34b 100644 --- a/routes/web.php +++ b/routes/web.php @@ -3,41 +3,44 @@ use Illuminate\Support\Facades\Route; //Auth -Route::get('/login', [App\Http\Controllers\AuthController::class, 'login'])->name('auth.login'); -Route::get('/register', [App\Http\Controllers\AuthController::class, 'register'])->name('auth.register'); +Route::get('/login', [App\Http\Controllers\AuthController::class, 'login'])->name('login'); +Route::get('/register', [App\Http\Controllers\AuthController::class, 'register'])->name('register'); Route::post('/create-account', [App\Http\Controllers\AuthController::class, 'createAccount'])->name('auth.createAccount'); Route::patch('/users/{user}/verify', [App\Http\Controllers\AuthController::class, 'verify'])->name('users.verify'); Route::post('/authenticate', [App\Http\Controllers\AuthController::class, 'authenticate'])->name('auth.authenticate'); -Route::post('/logout', [App\Http\Controllers\AuthController::class, 'logout'])->name('auth.logout'); +Route::post('/logout', [App\Http\Controllers\AuthController::class, 'logout'])->name('logout'); Route::get('/roles', [App\Http\Controllers\UserRoleController::class, 'index'])->name('roles.index'); Route::post('/roles', [App\Http\Controllers\UserRoleController::class, 'store'])->name('roles.store'); Route::delete('/roles/{role}', [App\Http\Controllers\UserRoleController::class, 'destroy'])->name('roles.destroy'); -// Route::middleware('auth')->group(function () { -// Home -Route::get('/', [App\Http\Controllers\Web\SummaryDashboardController::class, 'index'])->name('dashboard.summary'); -Route::get('/resiliensi', [App\Http\Controllers\Web\ResiliensiDashboardController::class, 'index'])->name('dashboard.resiliensi'); -Route::get('/hilirisasi', [App\Http\Controllers\Web\HilirisasiDashboardController::class, 'index'])->name('dashboard.hilirisasi'); -Route::get('/konektivitas', [App\Http\Controllers\Web\KonektivitasDashboardController::class, 'index'])->name('dashboard.konektivitas'); -Route::get('/akselerasi', [App\Http\Controllers\Web\AkselerasiDashboardController::class, 'index'])->name('dashboard.akselerasi'); +Route::middleware('auth') + ->group(function () { -// User -Route::get('/users', [App\Http\Controllers\UserController::class, 'index'])->name('users.index'); -Route::get('/api/users-list', [App\Http\Controllers\UserController::class, 'getUsers'])->name('api.users.list'); -// }); + // Home + Route::get('/', [App\Http\Controllers\Web\SummaryDashboardController::class, 'index'])->name('dashboard.summary'); + Route::get('/resiliensi', [App\Http\Controllers\Web\ResiliensiDashboardController::class, 'index'])->name('dashboard.resiliensi'); + Route::get('/hilirisasi', [App\Http\Controllers\Web\HilirisasiDashboardController::class, 'index'])->name('dashboard.hilirisasi'); + Route::get('/konektivitas', [App\Http\Controllers\Web\KonektivitasDashboardController::class, 'index'])->name('dashboard.konektivitas'); + Route::get('/akselerasi', [App\Http\Controllers\Web\AkselerasiDashboardController::class, 'index'])->name('dashboard.akselerasi'); -// Provinsi -Route::get('/provinsi', [App\Http\Controllers\ProvinsiController::class, 'index'])->name('provinsi.index'); -Route::get('/getprovinsi', [App\Http\Controllers\ProvinsiController::class, 'getProvinsi'])->name('provinsi.list'); + // User + Route::get('/users', [App\Http\Controllers\UserController::class, 'index'])->name('users.index'); + Route::get('/api/users-list', [App\Http\Controllers\UserController::class, 'getUsers'])->name('api.users.list'); + // }); -// Kabupaten -Route::get('/kabupatenkota', [App\Http\Controllers\KabupatenKotaController::class, 'index'])->name('kabupatenkota.index'); -Route::get('/getkabupatenkota', [App\Http\Controllers\KabupatenKotaController::class, 'getKabupatenKota'])->name('kabupatenkota.list'); + // Provinsi + Route::get('/provinsi', [App\Http\Controllers\ProvinsiController::class, 'index'])->name('provinsi.index'); + Route::get('/getprovinsi', [App\Http\Controllers\ProvinsiController::class, 'getProvinsi'])->name('provinsi.list'); -// Kecamatan -Route::get('/kecamatan', [App\Http\Controllers\KecamatanController::class, 'index'])->name('kecamatan.index'); -Route::get('/getkecamatan', [App\Http\Controllers\KecamatanController::class, 'getKecamatan'])->name('kecamatan.list'); + // Kabupaten + Route::get('/kabupatenkota', [App\Http\Controllers\KabupatenKotaController::class, 'index'])->name('kabupatenkota.index'); + Route::get('/getkabupatenkota', [App\Http\Controllers\KabupatenKotaController::class, 'getKabupatenKota'])->name('kabupatenkota.list'); -// Kelurahan -Route::get('/desakelurahan', [App\Http\Controllers\KelurahanController::class, 'index'])->name('desakelurahan.index'); -Route::get('/getdesakelurahan', [App\Http\Controllers\KelurahanController::class, 'getDesaKelurahan'])->name('desakelurahan.list'); + // Kecamatan + Route::get('/kecamatan', [App\Http\Controllers\KecamatanController::class, 'index'])->name('kecamatan.index'); + Route::get('/getkecamatan', [App\Http\Controllers\KecamatanController::class, 'getKecamatan'])->name('kecamatan.list'); + + // Kelurahan + Route::get('/desakelurahan', [App\Http\Controllers\KelurahanController::class, 'index'])->name('desakelurahan.index'); + Route::get('/getdesakelurahan', [App\Http\Controllers\KelurahanController::class, 'getDesaKelurahan'])->name('desakelurahan.list'); +}); \ No newline at end of file