• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/main.php
  • Класс: CAllMain
  • Вызов: CAllMain::AddPanelButton
public function AddPanelButton($arButton, $bReplace=false)
{
	if(is_array($arButton) && !empty($arButton))
	{
		if(isset($arButton["ID"]) && $arButton["ID"] <> "")
		{
			if(!isset($this->arPanelButtons[$arButton["ID"]]))
			{
				$this->arPanelButtons[$arButton["ID"]] = $arButton;
			}
			elseif($bReplace)
			{
				if(
					isset($this->arPanelButtons[$arButton["ID"]]["MENU"])
					&& is_array($this->arPanelButtons[$arButton["ID"]]["MENU"])
				)
				{
					if(!isset($arButton["MENU"]) || !is_array($arButton["MENU"]))
					{
						$arButton["MENU"] = [];
					}
					$arButton["MENU"] = array_merge($this->arPanelButtons[$arButton["ID"]]["MENU"], $arButton["MENU"]);
				}
				$this->arPanelButtons[$arButton["ID"]] = $arButton;
			}

			if (isset($this->arPanelFutureButtons[$arButton['ID']]))
			{
				if (
					isset($this->arPanelButtons[$arButton["ID"]]["MENU"])
					&& is_array($this->arPanelButtons[$arButton["ID"]]["MENU"])
				)
				{
					$this->arPanelButtons[$arButton["ID"]]["MENU"] = array_merge(
						$this->arPanelButtons[$arButton["ID"]]["MENU"],
						$this->arPanelFutureButtons[$arButton["ID"]]
					);
				}
				else
				{
					$this->arPanelButtons[$arButton["ID"]]["MENU"] = $this->arPanelFutureButtons[$arButton["ID"]];
				}
				unset($this->arPanelFutureButtons[$arButton['ID']]);
			}
		}
		else
		{
			$this->arPanelButtons[] = $arButton;
		}
	}
}