Files
Website/app/Http/Requests/MediaRequest.php
2023-08-30 11:08:24 +10:00

41 lines
1.2 KiB
PHP

<?php
namespace App\Http\Requests;
use Illuminate\Validation\Rule;
class MediaRequest extends BaseRequest
{
public function postRules(): array
{
return [
'job_id' => [
Rule::requiredIf(function () {
return request()->has('chunk') && request('chunk') != 1;
}),
Rule::forbiddenUnless(function () {
return request()->has('chunk') && request('chunk') != 1;
}),
'string',
],
'name' => [
Rule::requiredIf(function () {
return request()->has('chunk') && request('chunk') == 1;
}),
'string',
],
'chunk' => [
'required_with:chunk_count',
'integer',
'min:1',
'max:99',
Rule::passes(function ($attribute, $value) {
$chunkCount = request('chunk_count');
return $value <= $chunkCount;
})->withMessage('The chunk must be less than or equal to chunk_count.'),
],
'chunk_count' => 'required_with:chunk|integer|min:1',
];
}
}