76 lines
2.6 KiB
PHP
76 lines
2.6 KiB
PHP
<?php
|
|
|
|
use Illuminate\Support\Facades\Route;
|
|
use App\Http\Controllers\AdminAuthController;
|
|
use App\Http\Controllers\DashboardController;
|
|
use App\Http\Controllers\KategoriController;
|
|
use App\Http\Controllers\TemplateController;
|
|
use App\Http\Controllers\PelangganController;
|
|
use App\Http\Controllers\Api\ReviewController;
|
|
use Illuminate\Support\Facades\Auth;
|
|
|
|
// ============================
|
|
// LOGOUT UMUM
|
|
// ============================
|
|
Route::post('/logout', function () {
|
|
Auth::logout();
|
|
request()->session()->invalidate();
|
|
request()->session()->regenerateToken();
|
|
return redirect()->route('admin.login');
|
|
})->name('logout');
|
|
|
|
// ============================
|
|
// REDIRECT ROOT KE LOGIN ADMIN
|
|
// ============================
|
|
Route::get('/', function () {
|
|
return redirect()->route('admin.login');
|
|
});
|
|
|
|
// ============================
|
|
// ADMIN ROUTES
|
|
// ============================
|
|
Route::prefix('admin')->name('admin.')->group(function () {
|
|
|
|
// ----------------------------
|
|
// AUTH (LOGIN ADMIN)
|
|
// ----------------------------
|
|
Route::middleware('guest:admin')->group(function () {
|
|
Route::get('/login', [AdminAuthController::class, 'showLogin'])->name('login');
|
|
Route::post('/login', [AdminAuthController::class, 'login'])->name('login.post');
|
|
});
|
|
|
|
// ----------------------------
|
|
// ADMIN AREA (AUTH PROTECTED)
|
|
// ----------------------------
|
|
Route::middleware('auth:admin')->group(function () {
|
|
|
|
// Dashboard
|
|
Route::get('/dashboard', [DashboardController::class, 'index'])->name('dashboard');
|
|
|
|
// Logout
|
|
Route::post('/logout', [AdminAuthController::class, 'logout'])->name('logout');
|
|
|
|
// ----------------------------
|
|
// KATEGORI
|
|
// ----------------------------
|
|
Route::resource('kategori', KategoriController::class);
|
|
|
|
// ----------------------------
|
|
// TEMPLATE
|
|
// ----------------------------
|
|
Route::get('/template', [TemplateController::class, 'index'])->name('template.index');
|
|
Route::get('/template/{template}/edit', [TemplateController::class, 'edit'])->name('template.edit');
|
|
Route::put('/template/{template}', [TemplateController::class, 'update'])->name('template.update');
|
|
|
|
// ----------------------------
|
|
// PELANGGAN
|
|
// ----------------------------
|
|
Route::resource('pelanggan', PelangganController::class)->except(['create', 'edit']);
|
|
|
|
// ----------------------------
|
|
// REVIEW / ULASAN
|
|
// ----------------------------
|
|
Route::resource('reviews', ReviewController::class)->except(['create', 'edit', 'update', 'show', 'store']);
|
|
});
|
|
});
|