Code Duplication    Length = 25-27 lines in 2 locations

src/DbalDataProvider.php 1 location

@@ 161-187 (lines=27) @@
158
159
    public function filter($fieldName, $operator, $value)
160
    {
161
         switch ($operator) {
162
            case "eq":
163
                $operator = '=';
164
                break;
165
            case "n_eq":
166
                $operator = '<>';    
167
                break;
168
            case "gt":
169
                $operator = '>';    
170
                 break;
171
            case "lt":
172
                $operator = '<';    
173
                break;
174
            case "ls_e":
175
                $operator = '<=';    
176
                break;
177
            case "gt_e":
178
                $operator = '>=';    
179
                break;
180
            case "in":
181
                // may be broken, @see https://github.com/Nayjest/Grids/issues/109
182
                $operator = 'IN';
183
                if (!is_array($value)) {
184
                    $operator = '=';
185
                }
186
                break;
187
        }
188
        $parameterName = str_replace(".", "_", $fieldName); // @see https://github.com/Nayjest/Grids/issues/111
189
        $this->src->andWhere("$fieldName $operator :$parameterName");
190
        $this->src->setParameter($parameterName, $value);

src/EloquentDataProvider.php 1 location

@@ 150-174 (lines=25) @@
147
     */
148
    public function filter($fieldName, $operator, $value)
149
    {
150
        switch ($operator) {
151
            case "eq":
152
                $operator = '=';
153
                break;
154
            case "n_eq":
155
                $operator = '<>';
156
                break;
157
            case "gt":
158
                $operator = '>';
159
                break;
160
            case "lt":
161
                $operator = '<';
162
                break;
163
            case "ls_e":
164
                $operator = '<=';
165
                break;
166
            case "gt_e":
167
                $operator = '>=';
168
                break;
169
            case "in":
170
                if (!is_array($value)) {
171
                    $operator = '=';
172
                }
173
                break;
174
        }
175
176
        if (strpos($fieldName, '.') !== false) {
177
            $fieldNameParts = explode('.', $fieldName);