• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

contributte / datagrid / 8685602316

13 Mar 2024 12:24PM UTC coverage: 34.102%. Remained the same
8685602316

push

github

web-flow
[7.x] Next (#1060)

* PHP 8.0

* Translator: switch from ITranslator to Translator (#973)

* [7.x] Bootstrap 5 + PHP 8 + vanilla javascript (#1021)

* Bootstrap 5

* Bootstrap 5 (docs)

* Bootstrap 5

* form-control -> form-select

* Bump bootstrap-select for Bootstrap 5 support

* Removed `input-sm` from Bootstrap 3

See https://getbootstrap.com/docs/4.0/migration/#forms-1

* Bootstrap 5: When selectpicker, replace form-select classes with form-control and refresh it

* Hide `underline` also for `dropdown-item`. And merged into one CSS rule.

* Update the filterMultiSelect initialization

* Text-align: left -> start

Co-authored-by: Radim Vaculík <radim.vaculik@gmail.com>
Co-authored-by: Jaroslav Líbal <jaroslav.libal@neatous.cz>

* [7.x] phpstan-deprecation-rules (#1061)

* Fix sort

* Add method for setting custom Action href, v6.x (#853)

* [7.x] Nextras ORM 4 support, closes #984

* Fix ElasticsearchDataSource.php data source (#1041)

* Error: Typed property Ublaboo\DataGrid\InlineEdit\InlineEdit::$itemID must not be accessed before initialization

* composer: allow-plugins: php-http/discovery

* ItemDetailForm: $httpPost: Typed property must not be accessed...

* phpstan: revert  --memory-limit=4G

* NetteDatabaseSelectionHelper: Context -> Explorer, getSupplementalDriver -> getDriver

* Update README.md

* Templates: fix variables

* data-bs-toggle attribute for multiaction button (#1072)

* dependabot.yml (#1078)

* Allow nette/utils:4.0 (#1077)

* Add onColumnShow and onColumnHide event methods (#1076)

* Add onColumnShow and onColumnHide event methods

* Add native type array

* Removed duplicity

* Return value of BackedEnum when reading Doctrine entity property. (#1081)

* Return value of BackedEnum when reading array value (#1083)

* Added method to check if filter is on default values; Closes #1082 (#1084)

* ublaboo -> contributte (#1067) (#1075)

* Delete depe... (continued)

117 of 435 new or added lines in 54 files covered. (26.9%)

1455 existing lines in 67 files now uncovered.

1124 of 3296 relevant lines covered (34.1%)

0.34 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

11.11
/src/Column/FilterableColumn.php
1
<?php declare(strict_types = 1);
2

3
namespace Contributte\Datagrid\Column;
4

5
use Contributte\Datagrid\Datagrid;
6
use Contributte\Datagrid\Filter\FilterDate;
7
use Contributte\Datagrid\Filter\FilterDateRange;
8
use Contributte\Datagrid\Filter\FilterMultiSelect;
9
use Contributte\Datagrid\Filter\FilterRange;
10
use Contributte\Datagrid\Filter\FilterSelect;
11
use Contributte\Datagrid\Filter\FilterText;
12

13
abstract class FilterableColumn
14
{
15

16
        public function __construct(protected Datagrid $grid, protected string $key, protected string $column, protected string $name)
1✔
17
        {
18
        }
1✔
19

20
        public function setFilterText(string|array|null $columns = null): FilterText
21
        {
UNCOV
22
                if ($columns === null) {
×
UNCOV
23
                        $columns = [$this->column];
×
24
                } else {
UNCOV
25
                        $columns = is_string($columns)
×
UNCOV
26
                                ? [$columns]
×
UNCOV
27
                                : $columns;
×
28
                }
29

UNCOV
30
                return $this->grid->addFilterText($this->key, $this->name, $columns);
×
31
        }
32

33
        public function setFilterSelect(
34
                array $options,
35
                ?string $column = null
36
        ): FilterSelect
37
        {
NEW
38
                $column ??= $this->column;
×
39

40
                return $this->grid->addFilterSelect($this->key, $this->name, $options, $column);
×
41
        }
42

43
        public function setFilterMultiSelect(
44
                array $options,
45
                ?string $column = null
46
        ): FilterMultiSelect
47
        {
NEW
48
                $column ??= $this->column;
×
49

UNCOV
50
                return $this->grid->addFilterMultiSelect($this->key, $this->name, $options, $column);
×
51
        }
52

53
        public function setFilterDate(?string $column = null): FilterDate
54
        {
NEW
55
                $column ??= $this->column;
×
56

UNCOV
57
                return $this->grid->addFilterDate($this->key, $this->name, $column);
×
58
        }
59

60
        public function setFilterRange(
61
                ?string $column = null,
62
                string $nameSecond = '-'
63
        ): FilterRange
64
        {
NEW
65
                $column ??= $this->column;
×
66

UNCOV
67
                return $this->grid->addFilterRange($this->key, $this->name, $column, $nameSecond);
×
68
        }
69

70
        public function setFilterDateRange(
71
                ?string $column = null,
72
                string $nameSecond = '-'
73
        ): FilterDateRange
74
        {
NEW
75
                $column ??= $this->column;
×
76

UNCOV
77
                return $this->grid->addFilterDateRange($this->key, $this->name, $column, $nameSecond);
×
78
        }
79

80
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc