- Модуль: webdav
- Путь к файлу: ~/bitrix/modules/webdav/lib/invitedispatcher.php
- Класс: BitrixWebdavInviteDispatcher
- Вызов: InviteDispatcher::getListUsers
private function getListUsers(array $filter)
{
$limit = !isset($this->params['limit'])? self::USERS_ON_PAGE : (int)$this->params['limit'];
$page = empty($this->params['page']) ? 1 : (int)$this->params['page'];
$offset = ($page-1)*$limit;
$query = BitrixWebdavFolderInviteTable::getList(array(
'select' => array('*', 'INVITE_USER'),
'filter' => $filter,
'limit' => $limit,
'offset' => $offset,
'order' => array('ID' => 'ASC'),
));
$users = array();
while($row = $query->fetch())
{
$row = $this->reformatInviteRow($row);
$users[] = $row;
}
$countQuery = new Query(BitrixWebdavFolderInviteTable::getEntity());
$countQuery->addSelect(new ExpressionField('CNT', 'COUNT(1)'));
$countQuery->setFilter($filter);
$totalCount = $countQuery->setLimit(null)->setOffset(null)->exec()->fetch();
$totalCount = $totalCount['CNT'];
return array(
'USERS' => $users,
'COUNT' => count($users),
'PAGE' => $page,
'ON_PAGE' => self::USERS_ON_PAGE,
'TOTAL_COUNT' => intval($totalCount),
'TOTAL_PAGE' => ceil($totalCount/$limit),
);
}