Статус партнерства с 1С-Битрикс: Бизнес партнер
  • Маркетплейс
  • Документация
  • Блог
  • Новости
  • Софт
  • Профиль
  • Примечание в форме настроек собственного модуля Битрикс

    08.06.2018

    При создании собственных компонент для 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"
    );
    

    Все записи

    © 2001-2017 Воробьев Александр