%PDF- %PDF-
Direktori : /var/www/html/klinisol/klinisol-api/app/Http/Controllers/Auth/ |
Current File : /var/www/html/klinisol/klinisol-api/app/Http/Controllers/Auth/ResetPasswordController.php |
<?php namespace App\Http\Controllers\Auth; use App\Http\Requests\Api\v1\Auth\ResetPasswordRequest; use App\Models\ResetPassword; use App\Models\User; use Illuminate\Http\Request; use Illuminate\Routing\Controller; use Illuminate\Support\Facades\Password; class ResetPasswordController extends Controller { /** * ResetPasswordController constructor. */ public function __construct() { $this->middleware('guest'); } /** * @param Request $request * @return \Illuminate\Http\JsonResponse */ public function reset(ResetPasswordRequest $request) { $user = ResetPassword::getUserByToken($request->get('token')); if ($user && $user->email === $request->get('email')) { $user->password = $request->get('password'); $user->save(); ResetPassword::deleteByToken($request->get('token')); $accessToken = $user->createToken('api')->accessToken; return response()->json([ 'token' => $accessToken, ], 200); } return response()->json(['message' => 'Email does not match! Please try again!'], 400); } /** * @param $user * @param $password */ protected function resetPassword($user, $password) { $user->password = $password; $user->save(); } public function forgot(Request $request) { $email = $request->get('email'); $user = User::query()->where('email', $email)->first(); if ($user) { $token = ResetPassword::generateToken($email); $user->sendPasswordResetNotificationEmail($token, $request->header('department')); return response()->json([ 'ok' => 200, ], 200); } return response()->json(['message' => 'Email does not match! Please try again!'], 400); } }