Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
forbidals
/
gambling
/
app
/
Http
/
Controllers
/
User
/
Auth
:
ResetPasswordController.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php namespace App\Http\Controllers\User\Auth; use App\Http\Controllers\Controller; use App\Models\PasswordReset; use App\Models\User; use Illuminate\Http\Request; use Illuminate\Support\Facades\Hash; use Illuminate\Validation\Rules\Password; class ResetPasswordController extends Controller { public function showResetForm(Request $request, $token = null) { $email = session('fpass_email'); $token = session()->has('token') ? session('token') : $token; if (PasswordReset::where('token', $token)->where('email', $email)->count() != 1) { $notify[] = ['error', 'Invalid token']; return to_route('user.password.request')->withNotify($notify); } return view('Template::user.auth.passwords.reset')->with( ['token' => $token, 'email' => $email, 'pageTitle' => 'Reset Password'] ); } public function reset(Request $request) { $request->validate($this->rules()); $reset = PasswordReset::where('token', $request->token)->orderBy('created_at', 'desc')->first(); if (!$reset) { $notify[] = ['error', 'Invalid verification code']; return to_route('user.login')->withNotify($notify); } $user = User::where('email', $reset->email)->first(); $user->password = Hash::make($request->password); $user->save(); $userBrowser = osBrowser(); notify($user, 'PASS_RESET_DONE', [ 'operating_system' => isset($userBrowser['os_platform']) ? $userBrowser['os_platform'] : '', 'browser' => isset($userBrowser['browser']) ? $userBrowser['browser'] : '', 'ip' => getRealIp(), 'time' => date('Y-m-d h:i:s A'), ], ['email']); $notify[] = ['success', 'Password changed successfully']; return to_route('user.login')->withNotify($notify); } protected function rules() { $passwordValidation = Password::min(6); if (gs('secure_password')) { $passwordValidation = $passwordValidation->mixedCase()->numbers()->symbols()->uncompromised(); } return [ 'token' => 'required', 'email' => 'required|email', 'password' => ['required', 'confirmed', $passwordValidation], ]; } }