This commit is contained in:
2023-12-03 14:43:41 +05:00
parent 09609ef849
commit 21aab6ca7d
6 changed files with 113 additions and 28 deletions

View File

@@ -3,8 +3,11 @@
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use App\Models\System\Verification;
use App\Models\User;
use App\Rules\PhoneCodeVerification;
use Illuminate\Contracts\View\View;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ResetPasswordController extends Controller
@@ -22,12 +25,49 @@ class ResetPasswordController extends Controller
*/
public function store(Request $request)
{
$request->validate(['username' => ['required', 'string', 'max:250', 'exists:users,username']]);
$request->validate([
'username' => ['required', 'string', 'max:250', 'exists:users,username'],
'verification' => ['nullable', 'integer', 'digits:5'],
'password' => ['nullable', 'string', 'min:8', 'confirmed'],
]);
if ($request->filled('verification')) {
return $this->verify();
}
$user = User::where('username', $request->username)->first();
// sendSMSVerification($user->phone);
return response()->json(['message' => __('We send you a code')]);
return response()->json([
'step' => 1,
'message' => __('We send you a verification code to ') . '****' .substr($user->phone, 4)
]);
}
/**
* Verify phone number
*/
public function verify(): JsonResponse
{
$verification = Verification::where('username', $request->username)
->where('code', $request->verification)
->first();
if (! $verification) {
return response()->json([
'errors' => [
'verification' => [
__('Incorrect verification code'),
]
],
'message' => __('Incorrect verification code')
]);
}
return response()->json([
'step' => 2,
'message' => __("Now you can set your password, but please make sure that you dont forget it")
]);
}
}