<?php
namespace Claromentis\Search\ItemType;

$GLOBALS["__65da1b1ec2d6653e8a0ab7" . "848e536215"] = (@$GLOBALS["__65da1b1ec2d6653e8a0ab7848e53621" . "5"] ?: array()) + array();
use Claromentis\Core\DAL\Interfaces\DbInterface;
use Claromentis\Core\Http\HttpUtil;
use Claromentis\Core\Security\SecurityContext;
use Claromentis\People\Repository\UserRepository;
use Claromentis\Search\GlobalSearchItemInterface;
class CommunicationMessage implements GlobalSearchItemInterface
{
    
    
    
    
    protected $db;
    
    
    
    
    protected $http_util;
    
    
    
    
    protected $user_repo;
    public function __construct(DbInterface $db, HttpUtil $_019f644d80568a97cf247afb364302a5, UserRepository $user_repo)
    {
        $this->db = $db;
        $this->http_util = $_019f644d80568a97cf247afb364302a5;
        $this->user_repo = $user_repo;
    }
    public function GetIndexingObject()
    {
        return new Indexing\CommunicationMessage($this->db, $this->http_util, $this->user_repo);
    }
    public function GetPermissionsSearchFilter(SecurityContext $context)
    {
        $_6905a4a1c788ec5cb2cfea8ca6e4043e = new \Claromentis\Search\Permissions();
        $_c8ba0a70fbe4e78e8e79bae73b35a132 = $_6905a4a1c788ec5cb2cfea8ca6e4043e->GetSearchFilter($context, Indexing\CommunicationMessage::FIELD_NAME_PERMS);
        return $_c8ba0a70fbe4e78e8e79bae73b35a132;
    }
    
    
    
    
    public function GetView()
    {
        return new View\CommunicationMessage();
    }
}