45 lines
1.8 KiB
PHP
45 lines
1.8 KiB
PHP
<?php
|
|
|
|
use App\Http\Controllers\ImageController;
|
|
use App\Http\Controllers\LoginController;
|
|
use App\Http\Controllers\MainPageController;
|
|
use App\Http\Controllers\CartController;
|
|
use App\Http\Controllers\OrderController;
|
|
use App\Http\Controllers\ProductController;
|
|
use Illuminate\Support\Facades\Auth;
|
|
use Illuminate\Support\Facades\Route;
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Web Routes
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| Here is where you can register web routes for your application. These
|
|
| routes are loaded by the RouteServiceProvider within a group which
|
|
| contains the "web" middleware group. Now create something great!
|
|
|
|
|
*/
|
|
|
|
Route::get('/', [MainPageController::class, "index"])->name("main");
|
|
|
|
Route::get('/user', function () {
|
|
$user = Auth::user();
|
|
return view("user", ["user"=>$user]);
|
|
})->middleware("auth")->name("user");
|
|
|
|
Route::view("/login", "login");
|
|
|
|
Route::post('/login', [LoginController::class, "authenticate"])->name("login");
|
|
Route::post('/register', [LoginController::class, "register"])->name("register");
|
|
Route::any("/logout", [LoginController::class, "logout"])->name("logout");
|
|
|
|
Route::post("/product/{product}/addToCart", [CartController::class, "addToCart"])->name("addToCart")->middleware("auth");
|
|
Route::post("/product/{product}/removeFromCart", [CartController::class, "removeFromCart"])->name("removeFromCart")->middleware("auth");
|
|
|
|
Route::resource("product", ProductController::class)->middleware("auth.admin");
|
|
Route::resource("product", ProductController::class)->only(["show"]);
|
|
|
|
Route::resource("order", OrderController::class)->middleware("auth");
|
|
Route::post('/order/create', [OrderController::class, "create"])->name("order.create");
|
|
|
|
Route::resource("image", ImageController::class)->only(["store", "delete", "create"])->middleware("auth.admin");
|