Spaces:
Running
Running
Download app/Http/Controllers/Api/OtpController.php from Ailixir-AI-Team/ailixir-api: direct link, hf CLI and curl.
- Browser
- Download file 1.81 kB
-
https://huggingface.co/spaces/Ailixir-AI-Team/ailixir-api/resolve/f0dbfedd4517c01e2ac52ad175f104f22391223d/app/Http/Controllers/Api/OtpController.php
- Command line
-
hf download hf://spaces/Ailixir-AI-Team/ailixir-api@f0dbfedd4517c01e2ac52ad175f104f22391223d/app/Http/Controllers/Api/OtpController.php
-
curl -L -o OtpController.php https://huggingface.co/spaces/Ailixir-AI-Team/ailixir-api/resolve/f0dbfedd4517c01e2ac52ad175f104f22391223d/app/Http/Controllers/Api/OtpController.php
1.81 kB
| namespace App\Http\Controllers\Api; | |
| use App\Http\Controllers\Api\BaseController; | |
| use App\Http\Requests\User\EmailVerificationRequest; | |
| use App\Http\Requests\User\ResetPasswordRequest; | |
| use App\Models\User; | |
| use App\Services\OtpService; | |
| class OtpController extends BaseController | |
| { | |
| protected $otpService; | |
| public function __construct(OtpService $otpService) | |
| { | |
| $this->otpService = $otpService; | |
| } | |
| /** | |
| * Verify Email OTP | |
| */ | |
| public function verifyEmail(EmailVerificationRequest $request) | |
| { | |
| $user = User::where('email', $request->email)->first(); | |
| if (!$user) { | |
| return $this->errorResponse('User not found', 404); | |
| } | |
| try { | |
| $this->otpService->verifyOtp($user, 'email_verification', $request->otp); | |
| $user->update(['is_verified' => true]); | |
| $token = $user->createToken('auth_token')->plainTextToken; | |
| return $this->successResponse('Email verified successfully', [ | |
| 'token' => $token, | |
| 'user' => $user | |
| ]); | |
| } catch (\Exception $e) { | |
| return $this->errorResponse($e->getMessage(), 400); | |
| } | |
| } | |
| /** | |
| * Verify Password Reset OTP and reset password | |
| */ | |
| public function verifyResetPassword(ResetPasswordRequest $request) | |
| { | |
| $user = User::where('email', $request->email)->first(); | |
| if (!$user) { | |
| return $this->errorResponse('User not found', 404); | |
| } | |
| try { | |
| $this->otpService->resetPasswordWithOtp($user, $request->otp, $request->password); | |
| return $this->successResponse('Password reset successfully'); | |
| } catch (\Exception $e) { | |
| return $this->errorResponse($e->getMessage(), 400); | |
| } | |
| } | |
| } | |