• Модуль: 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;
}