get('/user', function (Request $request) { $user = $request->user(); $islogin = $user->tokenCan('update'); $test = $islogin ? 'true' : 'false'; return $user; }); Route::post('/login', function (Request $request) { $data = $request->validate([ 'account' => 'required', 'password' => 'required' ]); $user = User::where('account', $request->account)->first(); if (!$user || !Hash::check($request->password, $user->password)) { return response([ 'message' => ['These credentials do not match our records.'] ], 404); } $token = $user->createToken('test-token', [$user->role])->plainTextToken; $response = [ 'user' => JSON_ENCODE($user, JSON_UNESCAPED_UNICODE), 'token' => $token, ]; return response($response, 201); }); Route::post('/logout', function (Request $request) { $user = $request->user(); $user->tokens()->delete(); return $user; })->middleware(['auth:sanctum']); Route::post('/refresh', function (Request $request) { $user = $request->user(); $user->tokens()->delete(); $token = $user->createToken('test-token', ['uploader', 'tester'])->plainTextToken; $response = [ 'user' => $user, 'token' => $token, ]; return response($response, 201); })->middleware(['auth:sanctum']); /* Template API */ Route::post('/index', [TemplateController::class, 'index']); Route::middleware('auth:sanctum')->group(function () { Route::post('/activity/list', [ActivityController::class, 'index']); Route::post('/activity/store', [ActivityController::class, 'store']); Route::post('/activity/sql', [ActivityController::class, 'sql']); Route::post('/activity/claim', [ActivityController::class, 'claim']); Route::post('/activity/isClaimed', [ActivityController::class, 'isClaimed']); Route::post('/activity/uploadFile', [ActivityController::class, 'uploadFile']); }); Route::middleware(['auth:sanctum', 'abilities:Admin'])->group(function () { // CheckIn Route::post('/check_in/update', [CheckInController::class, 'update']); Route::post('/check_in/check_out', [CheckInController::class, 'check_out']); Route::post('/check_in/draw', [CheckInController::class, 'draw_user_when_check_in']); Route::post('/check_in/drawP', [CheckInController::class, 'draw_user_with_place']); // Prize Route::post('/prize/draw', [PrizeController::class, 'draw']); // Recipients Route::post('/recipients/store', [RecipientsController::class, 'store']); }); Route::post('/user/index', [UserController::class, 'index']); Route::post('/prize/index', [PrizeController::class, 'index']); Route::post('/recipients/index', [RecipientsController::class, 'index']); Route::post('/prize/drawable_prizes', [PrizeController::class, 'drawable_prizes']);