• Модуль: intranet
  • Путь к файлу: ~/bitrix/modules/intranet/lib/controller/leftmenu.php
  • Класс: BitrixIntranetControllerLeftMenu
  • Вызов: LeftMenu::addItemToAllAction
public function addItemToAllAction()
{
	if (!$this->isCurrentUserAdmin())
	{
		return null;
	}

	if (isset($_POST['itemInfo']) && is_array($_POST['itemInfo']))
	{
		$itemText = trim($_POST['itemInfo']['text']);
		$itemText = BitrixMainTextEmoji::encode($itemText);

		$itemData = array(
			'TEXT' => $itemText,
			'LINK' => $_POST['itemInfo']['link'],
			'ID' => $_POST['itemInfo']['id'],
		);
		if (isset($_POST['itemInfo']['openInNewPage']) && $_POST['itemInfo']['openInNewPage'] == 'Y')
		{
			$itemData['NEW_PAGE'] = 'Y';
		}

		if (!empty($_POST['itemInfo']['counterId']))
			$itemData['COUNTER_ID'] = $_POST['itemInfo']['counterId'];

		$adminOption = Option::get('intranet', 'left_menu_items_to_all_' . SITE_ID, '', SITE_ID);

		if (!empty($adminOption))
		{
			$adminOption = unserialize($adminOption, ['allowed_classes' => false]);
			foreach ($adminOption as $item)
			{
				if ($item['ID'] == $itemData['ID'])
					break;
			}
			$adminOption[] = $itemData;
		}
		else
		{
			$adminOption = array($itemData);
		}

		Option::set('intranet', 'left_menu_items_to_all_' . SITE_ID, serialize($adminOption), false, SITE_ID);
	}
}