38 lines
1.3 KiB
PHP
38 lines
1.3 KiB
PHP
<?php
|
|
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\Route;
|
|
use App\Http\Controllers\Api\V1\CategoryController;
|
|
use App\Http\Controllers\Api\V1\MaterialController;
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| API Routes
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| Here is where you can register API routes for your application. These
|
|
| routes are loaded by the RouteServiceProvider within a group which
|
|
| is assigned the "api" middleware group. Enjoy building your API!
|
|
|
|
|
*/
|
|
|
|
Route::middleware(['auth:sanctum'])->get('/user', function (Request $request) {
|
|
return $request->user();
|
|
});
|
|
|
|
Route::middleware(['auth:sanctum', 'role:admin'])->group(function () {
|
|
Route::get('/admin', function () {
|
|
return response()->json(['message' => 'Welcome Admin!']);
|
|
});
|
|
});
|
|
|
|
// Public Content Routes
|
|
Route::apiResource('categories', CategoryController::class)->only(['index', 'show']);
|
|
Route::apiResource('materials', MaterialController::class)->only(['index', 'show']);
|
|
|
|
// Admin Content Management Routes
|
|
Route::middleware(['auth:sanctum', 'role:admin'])->group(function () {
|
|
Route::apiResource('categories', CategoryController::class)->except(['index', 'show']);
|
|
Route::apiResource('materials', MaterialController::class)->except(['index', 'show']);
|
|
});
|