smartEnergyView-backend/app/Http/Controllers/Auth/ForgotPasswordController.php
2022-06-27 16:46:30 -03:00

59 lines
1.5 KiB
PHP

<?php
namespace App\Http\Controllers\Auth;
use App\Http\Requests\ForgotPasswordRequest;
use App\Mail\ResetPassword;
use App\Models\User;
use App\Traits\ApiResponse;
use Carbon\Carbon;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Http\JsonResponse;
use Illuminate\Support\Facades\Mail;
use Illuminate\Support\Facades\DB;
class ForgotPasswordController extends Controller
{
use ApiResponse;
public function __invoke(ForgotPasswordRequest $request)
{
$verify = User::where('email', $request->all()['email'])->exists();
if ($verify) {
$verify2 = DB::table('password_resets')->where([
['email', $request->all()['email']]
]);
if ($verify2->exists()) {
$verify2->delete();
}
$token = random_int(100000, 999999);
$password_reset = DB::table('password_resets')->insert([
'email' => $request->all()['email'],
'token' => $token,
'created_at' => Carbon::now()
]);
if ($password_reset) {
$sendMail = Mail::to($request->all()['email'])->send(new ResetPassword($token));
return $this->successResponse(true, "Please check your email for a 6 digit pin", 200);
}
} else {
return $this->errorResponse(false, "This email does not exist", 400);
}
}
public function verifyPin(Request $request)
{
}
}