Files
portal/app/app/Http/Requests/Auth/RegisterVerifyRequest.php
T
Дмитрий 3711a92958 feat(auth): регистрация — подтверждение email кодом + обязательный телефон (backend)
PhoneNormalizer (RU-телефон → 7XXXXXXXXXX) + Mailable RegisterEmailVerificationCode
с 6-значным кодом + эндпоинты register/start|verify|resend: pending-регистрация
в сессии (паттерн 2FA), email_verified_at=now() при verify, rate-limit на start +
cooldown 60с на resend, лимит 5 попыток ввода кода. Телефон обязателен, нормализуется
в 7XXXXXXXXXX. deptrac: разрешён Request→Service. Старый одношаговый register пока
сохранён (удаляется отдельной задачей Task 6).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-21 15:54:23 +03:00

31 lines
708 B
PHP

<?php
declare(strict_types=1);
namespace App\Http\Requests\Auth;
use Illuminate\Foundation\Http\FormRequest;
/**
* Валидация шага 2 регистрации (POST /api/auth/register/verify).
*/
class RegisterVerifyRequest extends FormRequest
{
/** @return array<string, mixed> */
public function rules(): array
{
return [
'code' => ['required', 'string', 'regex:/^\d{6}$/'],
];
}
/** @return array<string, string> */
public function messages(): array
{
return [
'code.required' => 'Введите код из письма.',
'code.regex' => 'Код состоит из 6 цифр.',
];
}
}