/
ColumnSet.php
36 lines (31 loc) · 1015 Bytes
/
ColumnSet.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php
namespace Concrete\Core\File\Search\ColumnSet;
use Concrete\Core\Search\Column\FileAttributeKeyColumn;
use Concrete\Core\Support\Facade\Facade;
use User;
use Concrete\Core\File\Search\SearchProvider;
use Concrete\Core\Search\Column\Set as DatabaseItemListColumnSet;
class ColumnSet extends DatabaseItemListColumnSet
{
protected $attributeClass = 'FileAttributeKey';
public function getAttributeKeyColumn($akHandle)
{
$ak = call_user_func(array($this->attributeClass, 'getByHandle'), $akHandle);
$col = new FileAttributeKeyColumn($ak);
return $col;
}
public static function getCurrent()
{
$app = Facade::getFacadeApplication();
/**
* @var $provider SearchProvider
*/
$provider = $app->make(SearchProvider::class);
$query = $provider->getSessionCurrentQuery();
if ($query) {
$columns = $query->getColumns();
return $columns;
}
return new DefaultSet();
}
}