| Server IP : 138.197.107.151 / Your IP : 216.73.217.7 Web Server : Apache/2.4.58 (Ubuntu) System : Linux BloxBy-Builder 6.8.0-71-generic #71-Ubuntu SMP PREEMPT_DYNAMIC Tue Jul 22 16:52:38 UTC 2025 x86_64 User : wpbetasites_mrakzqskir ( 1022) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/shark/app/Http/Controllers/ |
Upload File : |
<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Password;
use App\Models\User;
use Mail;
class ForgotPasswordController extends Controller
{
public function showLinkRequestForm()
{
$title = "Forgot password";
return view('auth.forgot-password',compact('title'));
}
public function sendResetLinkEmail(Request $request)
{
$request->validate(['email' => 'required|email']);
$user = User::where('email', $request->email)->whereIn("role",["user","agency"])->first();
if (!$user) {
return back()->withErrors(['email' => 'Invalid email address.']);
}
if ($user->is_blocked) {
return back()->withErrors(['email' => 'Your account is currently disabled. Please get in touch with support team.']);
}
if(!$user->password){
return back()->withErrors(['email' => 'Your account is linked to a social login. Please log in using your social account credentials.']);
}
$token = Password::createToken($user);
// Build reset URL
$resetUrl = url(route('password.reset', [
'token' => $token,
'email' => $user->email
]));
// Send email using custom view
Mail::send('emails.reset-password', [
'user' => $user,
'resetUrl' => $resetUrl,
'expire' => config('auth.passwords.'.config('auth.defaults.passwords').'.expire')
], function ($message) use ($user) {
$message->to($user->email);
$message->subject('Reset Your Password');
});
return back()->with('status', 'A reset link has been sent to your email.');
}
}