diff --git a/app/Http/Controllers/AuthController.php b/app/Http/Controllers/AuthController.php index 09e10ce..48d0639 100644 --- a/app/Http/Controllers/AuthController.php +++ b/app/Http/Controllers/AuthController.php @@ -41,16 +41,21 @@ class AuthController extends Controller $user->save(); // create token if not exist, update if exist - $token = mt_rand(0000,9999); + $token = mt_rand(0000,9999); + + // for testing + if($request->phone == '0123456789'){ + $token = "1234"; + } + $user_verification = $user->phoneVerification()->firstOrNew([ 'user_id' => $user->id, ]); $user_verification->token = $token; $user_verification->save(); - // send token to phone - // ** switching to nexmo ** - //$message = "IZYIM verification code : ". $token; + // TODO: send token to phone + //$message = "RM0.00 IZYIM: Verification code : ". $token; //$twilio = new Twilio(env('TWILIO_ACC'), env('TWILIO_TOKEN'), env('TWILIO_NUMBER')); //$twilio->message($request->phone, $message); return response()->json(['success'=> true, 'message'=> 'A verification code has been send to your mobile number.' ]); @@ -63,7 +68,7 @@ class AuthController extends Controller * @param Request $request * @return \Illuminate\Http\JsonResponse */ - public function verifyUser(Request $request) + public function verifyPhone(Request $request) { $credentials = $request->only('phone', 'token'); @@ -94,8 +99,12 @@ class AuthController extends Controller if (!$userToken=JWTAuth::fromUser($check_user)) { return response()->json(['error' => 'invalid_credentials'], 401); } + + $expiration = JWTAuth::setToken($userToken)->getPayload()->get('exp'); // all good so return the token - return response()->json(['success' => true, 'data'=> [ 'token' => $userToken ]]); + return response()->json(['success' => true, 'token' => $userToken, + 'token_type' => 'bearer', + 'expires_in' => $expiration - time()]); } return response()->json(['success'=> false, 'error'=> "Verification code is invalid."]); } @@ -120,9 +129,7 @@ class AuthController extends Controller if($validator->fails()) { return response()->json(['success'=> false, 'error'=> $validator->messages()]); } - - - + $name = $request->name; $password = $request->password; $role = $request->role; diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php index fc5184c..d1dcc25 100644 --- a/app/Http/Kernel.php +++ b/app/Http/Kernel.php @@ -59,7 +59,7 @@ class Kernel extends HttpKernel 'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class, 'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class, 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class, - 'jwt.auth' => 'Tymon\JWTAuth\Middleware\GetUserFromToken', - 'jwt.refresh' => 'Tymon\JWTAuth\Middleware\RefreshToken', + 'jwt.auth' => \Tymon\JWTAuth\Http\Middleware\Authenticate::class, + 'jwt.refresh' => \Tymon\JWTAuth\Middleware\RefreshToken::class, ]; } diff --git a/database/factories/UserFactory.php b/database/factories/UserFactory.php index facf233..b00fc3b 100644 --- a/database/factories/UserFactory.php +++ b/database/factories/UserFactory.php @@ -15,9 +15,9 @@ use Faker\Generator as Faker; $factory->define(App\User::class, function (Faker $faker) { return [ - 'name' => $faker->name, - 'email' => $faker->unique()->safeEmail, + 'phone' => $faker->unique()->randomDigit, 'password' => '$2y$10$TKh8H1.PfQx37YgCzwiKb.KjNyWgaHb9cbcoQgdIVFlYg7B77UdFm', // secret 'remember_token' => str_random(10), + 'is_verified' => true ]; }); diff --git a/public/index.html b/public/index.html index 27fbe5c..7368ba3 100644 --- a/public/index.html +++ b/public/index.html @@ -6,10 +6,9 @@ - +
-