. */ namespace App\Http\Controllers\Account; use Illuminate\Http\Request; use App\Http\Controllers\Controller; use App\Services\AccountService; use App\Services\BlockingService; class PhoneController extends Controller { public function change(Request $request) { return view('account.phone.change', [ 'account' => $request->user() ]); } public function requestChange(Request $request) { $request->validate(['g-recaptcha-response' => captchaConfigured() ? 'required|captcha': '']); if ((new BlockingService($request->user()))->checkBlock()) { return redirect()->route('account.blocked'); } (new AccountService(api: false))->requestPhoneChange($request); return redirect()->route('account.phone.validate'); } public function validateChange(Request $request) { return view('account.phone.validate', [ 'phoneChangeCode' => $request->user()->phoneChangeCode()->firstOrFail() ]); } public function store(Request $request) { if ((new AccountService(api: false))->updatePhone($request)) { return redirect()->route('account.dashboard'); } return redirect()->route('account.phone.change')->withErrors([ 'code' => 'The code entered was not valid' ]); } }