PostGetFiltersRequest   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 44
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
eloc 23
c 1
b 0
f 1
dl 0
loc 44
rs 10
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A rules() 0 27 1
A authorize() 0 3 1
1
<?php
2
3
namespace CSlant\Blog\Api\Http\Requests\Post;
4
5
use CSlant\Blog\Api\Http\Requests\JsonFormRequest;
6
7
class PostGetFiltersRequest extends JsonFormRequest
8
{
9
    /**
10
     * Determine if the user is authorized to make this request.
11
     *
12
     * @return bool
13
     */
14
    public function authorize(): bool
15
    {
16
        return true;
17
    }
18
19
    /**
20
     * Get the validation rules that apply to the request.
21
     *
22
     * @return array<string, mixed>
23
     */
24
    public function rules(): array
25
    {
26
        return [
27
            'tags' => 'nullable|array',
28
            'tags.*' => 'nullable|integer|exists:tags,id',
29
30
            'categories' => 'nullable|array',
31
            'categories.*' => 'nullable|integer|exists:categories,id',
32
            'categories_exclude' => 'nullable|array',
33
            'categories_exclude.*' => 'nullable|integer|exists:categories,id',
34
35
            'exclude' => 'nullable|array',
36
            'exclude.*' => 'nullable|integer|exists:posts,id',
37
            'include' => 'nullable|array',
38
            'include.*' => 'nullable|integer|exists:posts,id',
39
40
            'author' => 'nullable|array',
41
            'author.*' => 'nullable|integer|exists:users,id',
42
            'author_exclude' => 'nullable|array',
43
            'author_exclude.*' => 'nullable|integer|exists:users,id',
44
45
            'featured' => 'nullable|numeric|in:0,1',
46
            'search' => 'nullable|string|max:255',
47
            'order_by' => 'nullable|string',
48
            'order' => 'nullable|string|in:asc,desc,ASC,DESC',
49
            'page' => 'nullable|numeric',
50
            'per_page' => 'nullable|numeric|between:1,100',
51
        ];
52
    }
53
}
54