- Модуль: crmmobile
- Путь к файлу: ~/bitrix/modules/crmmobile/lib/Controller/EntityDetails.php
- Класс: BitrixCrmMobileControllerEntityDetails
- Вызов: EntityDetails::getFloatingMenuItemsSettings
private function getFloatingMenuItemsSettings(Item $entity, CurrentUser $currentUser): ?array
{
$categoryId = $entity->isCategoriesSupported() ? $entity->getCategoryId() : null;
$entityTypeId = $entity->getEntityTypeId();
$userId = $currentUser->getId();
$menuId = MenuIdResolver::getMenuId($entityTypeId, (string)$userId, $categoryId);
$options = CUserOptions::GetOption('ui', $menuId, []);
$settings = $options['settings'] ?? null;
if (!$settings)
{
return null;
}
$menuItemsSettings = Json::decode($settings);
$preparedMenuItemsSettings = [];
foreach ($menuItemsSettings as $key => $value)
{
$preparedMenuItemsSettings[str_replace($menuId.'_', '', $key)] = [
'position' => $value['sort'],
'disabled' => $value['isDisabled'],
'pinned' => $value['isPinned'],
];
}
return $preparedMenuItemsSettings;
}