• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/component.php
  • Класс: CBitrixComponent
  • Вызов: CBitrixComponent::addEditAction
public function addEditAction($entryId, $editLink, $editTitle = false, $arParams = array())
{
	/** @global CMain $APPLICATION */
	global $APPLICATION;

	if (!$entryId || !$editLink)
		return;

	if (!$editTitle)
	{
		IncludeModuleLangFile(__FILE__);
		$editTitle = GetMessage('EDIT_ACTION_TITLE_DEFAULT');
	}

	if (!is_array($arParams))
		$arParams = array();

	if (!($arParams['WINDOW'] ?? null))
		$arParams['WINDOW'] = array(
			"width" => 780,
			"height" => 500,
		);

	if (!($arParams['ICON'] ?? '') && !($arParams['SRC'] ?? '') && !($arParams['IMAGE'] ?? ''))
		$arParams['ICON'] = 'bx-context-toolbar-edit-icon';

	$arBtn = array(
		'URL' => 'javascript:'.$APPLICATION->getPopupLink(array(
			'URL' => $editLink,
			"PARAMS" => $arParams['WINDOW'],
		)),
		'TITLE' => $editTitle,
	);

	if ($arParams['ICON'])
		$arBtn['ICON'] = $arParams['ICON'];
	elseif ($arParams['SRC'] || $arParams['IMAGE'])
		$arBtn['SRC'] = $arParams['IMAGE'] ? $arParams['IMAGE'] : $arParams['SRC'];

	$APPLICATION->setEditArea($this->getEditAreaId($entryId), array(
		$arBtn,
	));
}