someshit going on

This commit is contained in:
2025-09-22 18:31:00 +05:00
parent a04c5b1f00
commit 4911a37cfd
9 changed files with 194 additions and 0 deletions

View File

@@ -0,0 +1,30 @@
<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use App\Modules\OTPVerification\Rules\OTPVerificationRule;
use App\Modules\PhoneNumberVerification\Rules\PhoneNumberVerificationRule;
use App\Models\User;
use Illuminate\Http\Request;
class OTPVericationController extends Controller
{
public function index()
{
return view('pages.auth.otp-verify');
}
public function store(Request $request)
{
$request->validate([
'code' => ['required', 'integer', new OTPVerificationRule(auth()->user()->phone_number)],
]);
User::find(auth()->id())->update([
'phone_number_verified_at' => now(),
]);
return redirect('/');
}
}

View File

@@ -0,0 +1,29 @@
<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use App\Models\User;
use App\Modules\OTPVerification\Rules\OTPVerificationRule;
use Illuminate\Http\Request;
class OTPVerificationController extends Controller
{
public function index()
{
return view('pages.auth.otp-verify');
}
public function store(Request $request)
{
$request->validate([
'code' => ['required', 'integer', new OTPVerificationRule(auth()->user()->phone_number)],
]);
auth()->user()->update([
'phone_number_verified_at' => now(),
]);
return redirect('/');
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;
class EnsurePhoneNumberIsValidated
{
/**
* Handle an incoming request.
*
* @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next
*/
public function handle(Request $request, Closure $next): Response
{
if ($request->user() && ! $request->user()->phone_number_verified_at) {
return redirect()->route('otp.verify');
}
return $next($request);
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;
class RedirectIfPhoneNumberIsVerified
{
/**
* Handle an incoming request.
*
* @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next
*/
public function handle(Request $request, Closure $next): Response
{
if ($request->user() && $request->user()->phone_number_verified_at) {
return redirect('/');
}
return $next($request);
}
}