/
Item.php
31 lines (28 loc) · 975 Bytes
/
Item.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
<?php
namespace Concrete\Core\File\Search\Result;
use Concrete\Core\Entity\File\File;
use Concrete\Core\Search\Result\Item as SearchResultItem;
use Concrete\Core\Search\Result\Result as SearchResult;
use Concrete\Core\Search\Column\Set;
use Concrete\Core\Tree\Node\Node;
class Item extends SearchResultItem
{
public function __construct(SearchResult $result, Set $columns, $item)
{
parent::__construct($result, $columns, $item);
$this->populateDetails($item);
}
protected function populateDetails($item)
{
if ($item instanceof Node) {
$obj = $item->getTreeNodeJSON();
} else if ($item instanceof File) {
$obj = $item->getJSONObject();
$obj->treeNodeTypeHandle = 'file'; // We include this so our bulk menu works when searching.
}
foreach ($obj as $key => $value) {
$this->{$key} = $value;
}
//$this->isStarred = $item->isStarred();
}
}