From d010eaba236e7de353dfea3cd9d2b1538035578d Mon Sep 17 00:00:00 2001 From: ricky rx Date: Sat, 20 Apr 2024 10:29:07 +0700 Subject: [PATCH] chore: improvement middleware --- app/Helper/FileHelper.php | 20 ++++++++++++++++++++ app/Http/Controllers/api/AuthController.php | 8 ++------ app/Models/User.php | 14 ++++++++++++++ 3 files changed, 36 insertions(+), 6 deletions(-) create mode 100644 app/Helper/FileHelper.php diff --git a/app/Helper/FileHelper.php b/app/Helper/FileHelper.php new file mode 100644 index 0000000..af7eb61 --- /dev/null +++ b/app/Helper/FileHelper.php @@ -0,0 +1,20 @@ + \ No newline at end of file diff --git a/app/Http/Controllers/api/AuthController.php b/app/Http/Controllers/api/AuthController.php index 9e6627e..bc85e23 100644 --- a/app/Http/Controllers/api/AuthController.php +++ b/app/Http/Controllers/api/AuthController.php @@ -27,16 +27,12 @@ class AuthController extends Controller { } $token = $user->createToken('auth_token')->plainTextToken; - return JSONResponse::Success(['session' => [ - 'username' => $user->username, - 'email' => $user->email, - 'token' => $token] - ]); + return JSONResponse::Success(['session' => $user->getObjSession($token)]); } // check in middleware public function check(Request $request) { - return JSONResponse::Success(); + return JSONResponse::Success(['session' => $request->user()->getObjSession($request->bearerToken())]); } public function logOut(Request $request) { diff --git a/app/Models/User.php b/app/Models/User.php index 591e130..9dd72bf 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -3,6 +3,8 @@ namespace App\Models; // use Illuminate\Contracts\Auth\MustVerifyEmail; + +use App\Helper\FileHelper; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Foundation\Auth\User as Authenticatable; use Illuminate\Notifications\Notifiable; @@ -60,4 +62,16 @@ class User extends Authenticatable $this->password = Hash::make($request->newPassword); $this->save(); } + + public function getObjSession($currentAccessToken) { + return [ + 'username' => $this->username, + 'email' => $this->email, + 'token' => $currentAccessToken, + 'allowedFileExtension' => [ + 'video' => FileHelper::convertToStrJsValidation(FileHelper::$allowedVideoExtensions), + 'apk' => FileHelper::convertToStrJsValidation(FileHelper::$allowedVideoExtensions) + ] + ]; + } }