UploadProductionOrderPhotosRequest.php 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Http\Requests;
  4. use Illuminate\Foundation\Http\FormRequest;
  5. class UploadProductionOrderPhotosRequest extends FormRequest
  6. {
  7. public function authorize(): bool
  8. {
  9. return true;
  10. }
  11. /** @return array<string, mixed> */
  12. public function rules(): array
  13. {
  14. return [
  15. 'photos' => ['required', 'array', 'max:10'],
  16. 'photos.*' => ['required', 'file', 'mimes:jpeg,jpg,png,webp', 'max:10240'],
  17. ];
  18. }
  19. /** @return array<string, string> */
  20. public function messages(): array
  21. {
  22. return [
  23. 'photos.required' => 'Выберите хотя бы одну фотографию.',
  24. 'photos.array' => 'Не удалось прочитать список фотографий.',
  25. 'photos.max' => 'За один раз можно выбрать не более :max фотографий.',
  26. 'photos.*.required' => 'Файл фотографии не выбран.',
  27. 'photos.*.file' => 'Выбранная фотография не является файлом.',
  28. 'photos.*.uploaded' => 'Не удалось загрузить фотографию. Возможно, файл слишком большой.',
  29. 'photos.*.mimes' => 'Допустимы только фотографии JPG, JPEG, PNG и WebP.',
  30. 'photos.*.max' => 'Размер каждой фотографии не должен превышать 10 МБ.',
  31. ];
  32. }
  33. }