При создании собственных компонент для Bitrix CMS иногда возникает необходимость добавить блок привлекающий внимание к какой либо важной настройке для этого в ядре есть специальный функционал.
Содержание формы настроек компонента настраивается в специальном массиве в файле .parameters.php. Основные положения по содержанию данного файла есть в официальной документации Битрикс. Однако там описаны не все возможности. Одна из таких: вывод произвольного HTML кода в специальном блоке позволяющем привлечь внимание
Для этого необходимо добавить следующий код
$arComponentParameters = array( "PARAMETERS" => array( // ...... прочие параметры компонента "STRONG_PARAM_MESSAGE" => array( "PARENT" => "SETTINGS", "TYPE" => "CUSTOM", "JS_FILE" => "/bitrix/js/main/comp_props.js", "JS_EVENT" => "BxShowComponentNotes", "JS_DATA" => 'Тут текст сообщения про параметр <b>STRONG_PARAM</b>' ), 'STRONG_PARAM' => array( "PARENT" => "SETTINGS", "NAME" => 'Параметр к которому необходимо привлечь внимание', "TYPE" => "STRING", "DEFAULT" => "", ), // ...... прочие параметры компонента ) );
При этом можно использовать возможность перегружать форму по вводу значения параметра и выводить предупреждение только в случае выполнение некоего условия
if (!array_key_exists('STRONG_PARAM', $arCurrentValues) || (int)($arCurrentValues['STRONG_PARAM']) < 10) { $arComponentParameters["PARAMETERS"]["STRONG_PARAM_MESSAGE"] = Array( "PARENT" => "SETTINGS", "TYPE" => "CUSTOM", "JS_FILE" => "/bitrix/js/main/comp_props.js", "JS_EVENT" => "BxShowComponentNotes", "JS_DATA" => 'Тут текст сообщения про параметр <b>STRONG_PARAM</b>' ); } $arComponentParameters["PARAMETERS"]["STRONG_PARAM"] = Array( "PARENT" => "SETTINGS", "NAME" => 'Параметр к которому необходимо привлечь внимание', "TYPE" => "STRING", "DEFAULT" => "", "REFRESH" => "Y" );