38 lines
963 B
PHP
38 lines
963 B
PHP
<?php
|
|
|
|
namespace App\Http\Requests;
|
|
|
|
use Illuminate\Foundation\Http\FormRequest;
|
|
use Illuminate\Validation\Rules\File;
|
|
|
|
class StoreIdentityVerificationRequest extends FormRequest
|
|
{
|
|
public function authorize(): bool
|
|
{
|
|
$user = $this->user();
|
|
|
|
return $user?->hasPurchasedCertification() === true
|
|
&& $user->account_verified_at === null;
|
|
}
|
|
|
|
public function rules(): array
|
|
{
|
|
return [
|
|
'document' => [
|
|
'required',
|
|
File::types(['jpg', 'jpeg', 'png', 'pdf'])->max('10mb'),
|
|
'mimetypes:image/jpeg,image/png,application/pdf',
|
|
],
|
|
];
|
|
}
|
|
|
|
public function messages(): array
|
|
{
|
|
return [
|
|
'document.required' => __('api.certification.document_required'),
|
|
'document.mimetypes' => __('api.certification.document_type'),
|
|
'document.max' => __('api.certification.document_max'),
|
|
];
|
|
}
|
|
}
|