- Модуль: disk
- Путь к файлу: ~/bitrix/modules/disk/lib/recentlyusedmanager.php
- Класс: BitrixDiskRecentlyUsedManager
- Вызов: RecentlyUsedManager::getFileModelListByUser
public function getFileModelListByUser($user, array $filter = array())
{
$userId = User::resolveUserId($user);
if(!$userId)
{
$this->errorCollection->addOne(new Error('Could not get user id.'));
return array();
}
$driver = Driver::getInstance();
$storage = $driver->getStorageByUserId($userId);
if(!$storage)
{
$this->errorCollection->addOne(new Error('Could not get storage by user id.'));
return array();
}
if($this->isFirstRun($userId))
{
if(!$this->hasData($userId))
{
$this->fixColdStart($userId);
}
$this->saveFirstRun($userId);
}
$securityContext = $storage->getCurrentUserSecurityContext();
$parameters = array(
'filter' => array(
'RECENTLY_USED.USER_ID' => $userId,
'DELETED_TYPE' => ObjectTable::DELETED_TYPE_NONE,
'TYPE' => ObjectTable::TYPE_FILE,
),
'order' => array('RECENTLY_USED.CREATE_TIME' => 'DESC'),
'limit' => RecentlyUsedTable::MAX_COUNT_FOR_USER,
);
if($filter)
{
$parameters['filter'] = array_merge($parameters['filter'], $filter);
}
$parameters = $driver->getRightsManager()->addRightsCheck(
$securityContext,
$parameters,
array('ID', 'CREATED_BY')
);
return File::getModelList($parameters);
}