Документация для разработчиков
Темная тема

Начало работы

Использование

Компонент bitrix:ui.sidepanel.wrapper является оберткой для вывода целевого компонента в слайдере.

Рассмотрим типовой случай. В комплексном компоненте в шаблоне edit.php подключается компонент:

$APPLICATION->IncludeComponent(
	'bitrix:crm.button.edit',
	'',
	[
		'PATH_TO_BUTTON_LIST' => $arResult['PATH_TO_BUTTON_LIST'],
		'PATH_TO_BUTTON_EDIT' => $arResult['PATH_TO_BUTTON_EDIT'],
		'PATH_TO_BUTTON_FILL' => $arResult['PATH_TO_BUTTON_FILL'],
		'PATH_TO_USER_PROFILE' => $arResult['PATH_TO_USER_PROFILE'],
		'ELEMENT_ID' => $arResult['VARIABLES']['id']
	]
);

Адаптируем его для поддержки вывода в слайдере:

$APPLICATION->IncludeComponent(
	'bitrix:ui.sidepanel.wrapper',
	'',
	[
		'POPUP_COMPONENT_NAME' => 'bitrix:crm.button.edit',
		'POPUP_COMPONENT_TEMPLATE_NAME' => '',
		'POPUP_COMPONENT_PARAMS' => [
			'PATH_TO_BUTTON_LIST' => $arResult['PATH_TO_BUTTON_LIST'],
			'PATH_TO_BUTTON_EDIT' => $arResult['PATH_TO_BUTTON_EDIT'],
			'PATH_TO_BUTTON_FILL' => $arResult['PATH_TO_BUTTON_FILL'],
			'PATH_TO_USER_PROFILE' => $arResult['PATH_TO_USER_PROFILE'],
			'ELEMENT_ID' => $arResult['VARIABLES']['id']
		]
	]
);

Вызов целевого компонента обернули в bitrix:ui.sidepanel.wrapper:

  • имя компонента передано в параметре POPUP_COMPONENT_NAME;
  • имя шаблона передано в параметре POPUP_COMPONENT_TEMPLATE_NAME;
  • параметры компонента переданы в параметре POPUP_COMPONENT_PARAMS.

Компонент сам поймет, что его открыли в слайдере и выведет оформление. Иначе отобразится обычный вывод на странице.

Особенности

Если детальная страница сохраняется в слайдере, то редирект должен всегда вести на детальную страницу. При этом необходимо добавить в адрес параметр IFRAME=Y.

...
if ($this->request->isPost() && check_bitrix_sessid())
{
	...
	$uri = new Uri($pathToDetailPage);
	if ($this->request->get('IFRAME') == 'Y')
	{
		$uri->addParams(['IFRAME' => 'Y']);
	}

	LocalRedirect($uri->getLocator());
}
...

Полезные возможности

Все возможности включаются через параметры компонента.

  • Поддерживаются области pagetitle, inside_pagetitle и sidebar. Те же, что и в шаблоне сайта bitrix24.
  • Если вы используете эти области в своих компонентах, не забывайте о проверке текущего шаблона сайта по константе SITE_TEMPLATE_ID.
  • Дополнительно, только в слайдере, доступна область left-panel. Использовать ее имеет смысл в сочетании с параметром PAGE_MODE=false.

Дополнительно



Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Наверх