| @@ 351-369 (lines=19) @@ | ||
| 348 | * |
|
| 349 | * @return Collection|static |
|
| 350 | */ |
|
| 351 | public function visibleColumns() |
|
| 352 | { |
|
| 353 | $querySelections = array_filter(explode(',', request(Tools\ColumnSelector::SELECT_COLUMN_NAME))); |
|
| 354 | if ( count($querySelections) > 0) { |
|
| 355 | $visible = $querySelections; |
|
| 356 | } else { |
|
| 357 | $visible = $this->columnShownNames; |
|
| 358 | } |
|
| 359 | ||
| 360 | if (empty($visible)) { |
|
| 361 | return $this->columns; |
|
| 362 | } |
|
| 363 | ||
| 364 | array_push($visible, '__row_selector__', '__actions__'); |
|
| 365 | ||
| 366 | return $this->columns->filter(function (Column $column) use ($visible) { |
|
| 367 | return in_array($column->getName(), $visible); |
|
| 368 | }); |
|
| 369 | } |
|
| 370 | ||
| 371 | /** |
|
| 372 | * Get all visible column names. |
|
| @@ 376-394 (lines=19) @@ | ||
| 373 | * |
|
| 374 | * @return array|static |
|
| 375 | */ |
|
| 376 | public function visibleColumnNames() |
|
| 377 | { |
|
| 378 | $querySelections = array_filter(explode(',', request(Tools\ColumnSelector::SELECT_COLUMN_NAME))); |
|
| 379 | if ( count($querySelections) > 0) { |
|
| 380 | $visible = $querySelections; |
|
| 381 | } else { |
|
| 382 | $visible = $this->columnShownNames; |
|
| 383 | } |
|
| 384 | ||
| 385 | if (empty($visible)) { |
|
| 386 | return $this->columnNames; |
|
| 387 | } |
|
| 388 | ||
| 389 | array_push($visible, '__row_selector__', '__actions__'); |
|
| 390 | ||
| 391 | return collect($this->columnNames)->filter(function ($column) use ($visible) { |
|
| 392 | return in_array($column, $visible); |
|
| 393 | }); |
|
| 394 | } |
|
| 395 | ||
| 396 | /** |
|
| 397 | * Add column to grid. |
|