web.php 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <?php
  2. use App\Http\Controllers\ProductController;
  3. use App\Http\Controllers\UserController;
  4. use App\Models\Role;
  5. use Illuminate\Support\Facades\Auth;
  6. use Illuminate\Support\Facades\Route;
  7. Route::get('/', function () {
  8. return redirect()->route('home');
  9. });
  10. Auth::routes(['register' => false, 'reset' => false, 'verify' => false, 'confirm' => false]);
  11. Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])->name('home');
  12. Route::middleware('auth:web')->group(function () {
  13. // admin routes
  14. Route::prefix('admin')->middleware('role:' . Role::ADMIN)->group(function (){
  15. Route::prefix('users')->group(function (){
  16. Route::get('', [UserController::class, 'index'])->name('user.index');
  17. Route::get('create', [UserController::class, 'create'])->name('user.create');
  18. Route::get('{user}', [UserController::class, 'show'])->name('user.show');
  19. Route::post('', [UserController::class, 'store'])->name('user.store');
  20. Route::put('{user}', [UserController::class, 'update'])->name('user.update');
  21. Route::delete('{user}', [UserController::class, 'destroy'])->name('user.destroy');
  22. });
  23. });
  24. // profile
  25. Route::get('profile', [UserController::class, 'profile'])->name('user.profile');
  26. Route::post('profile/store', [UserController::class, 'storeProfile'])->name('profile.store');
  27. Route::get('catalog', [ProductController::class, 'index'])->name('catalog.index');
  28. Route::get('catalog/{product}', [ProductController::class, 'show'])->name('catalog.show');
  29. Route::post('catalog/import', [ProductController::class, 'import'])->name('catalog.import');
  30. });