ParseSearchTrait   A
last analyzed

Complexity

Total Complexity 5

Size/Duplication

Total Lines 36
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 26
c 1
b 0
f 0
dl 0
loc 36
rs 10
wmc 5

1 Method

Rating   Name   Duplication   Size   Complexity  
A parseSearch() 0 12 5
1
<?php
2
3
namespace Modules\Core\Traits\Criteria;
4
5
trait ParseSearchTrait
6
{
7
    /** @var \Illuminate\Http\Request $request */
8
    protected $request;
9
    /** @var \Illuminate\Database\Eloquent\Builder|\Illuminate\Database\Eloquent\Model|\Illuminate\Database\Query\Builder $model */
10
    protected $model;
11
    /** @var \Prettus\Repository\Contracts\RepositoryInterface $repository */
12
    protected $repository;
13
    protected $search;
14
    protected $searchData;
15
    protected $searchFields;
16
    protected $isFirstField;
17
    protected $modelForceAndWhere;
18
    protected $fieldsSearchable;
19
    protected $fields;
20
    protected $filter;
21
    protected $orderBy;
22
    protected $sortedBy;
23
    protected $with;
24
    protected $searchJoin;
25
    protected $acceptedConditions;
26
    protected $originalFields;
27
    protected $searchClosures;
28
29
    protected function parseSearch()
30
    {
31
        if (stripos($this->search, ';') || stripos($this->search, ':')) {
32
            $values = explode(';', $this->search);
33
            foreach ($values as $value) {
34
                $s = explode(':', $value);
35
                if (count($s) == 1) {
36
                    $this->search = $s[0];
37
                }
38
            }
39
40
            $this->search = null;
41
        }
42
    }
43
}
44