Каталог решений

Покупка продления купона

Продолжительность:
Общая сумма:
0 руб.
Ваш запрос успешно отправлен!

Я согласен с условиями активации продлений
Продлить
Продолжить покупки

Настройки для разработчиков

Решение позволяет генерировать страницы настроек для своих модулей, поддерживающие несколько табов и группировку свойств.Модуль - альтернатива классу CModuleOptions, который многие используют для генерации настроек модулей в своих проектах.Использует библиотеку интерфейсов 1С-Битрикс.Данный модель сделан как альтернатива установки через composer.Используемый в модуле код выложен на github.

Настройки для разработчиков

Настройки для разработчиков

от .mpmstudio
Скриншоты
Описание

Технические данные

Опубликовано:
28.07.2021
Обновлено:
29.09.2022
Версия:
1.4.0
Установлено:
50 - 99 раз
Подходящие редакции:
«Старт», «Стандарт», «Малый бизнес», «Бизнес», «Интернет-магазин + CRM»
Адаптивность:
Да
Поддержка Композита:
Да
Совместимо с Сайты24
Нет

Пользовательское соглашение

Описание

Решение позволяет генерировать страницы настроек для своих модулей, поддерживающие несколько табов и группировку свойств.

Модуль - альтернатива классу CModuleOptions, который многие используют для генерации настроек модулей в своих проектах.
Использует библиотеку интерфейсов 1С-Битрикс.

Данный модель сделан как альтернатива установки через composer.
Используемый в модуле код выложен на github.
Отзывы (0)
Обсуждения (1)
Что нового
1.4.0 (29.09.2022)
  • Добавлено новое поле типа "Сообщение", которое позволяет выводить информационные сообщения на странице настроек.
1.3.2 (28.09.2022)
  • Исправлено отображении опции "Выбор цвета"
  • При пустом или отсутствующем заголовке группы опций он не будет отображен
1.3.1 (28.03.2022)
  • Исправлен баг, из-за которого при сохранении параметров всегда была активна только первая вкладка
  • Исправлен баг с нерабочими свойствами MIN, MAX в значении 0.
1.3.0 (16.03.2022)
  • Добавлено поле типа "Условие", которое может фильтровать товары в каталоге
  • Внутренние оптимизации
1.2.1 (09.03.2022)
  • Исправлена ошибка с некорректно работающим типом поля "Чекбокс"
1.2.0 (21.02.2022)
  • Добавлен тип поля "HTML-редактор".
1.1.0 (02.08.2020)
  • Исправлена ошибка с не очищающайся подсказкой для опции.
  • Добавлена возможность легко добавлять свои типы опций без необходимости правки модуля.
Установка
Краткая версия
В файле настроек вашего модуля подключаете текущий модуль и вызываете с нужными параметрами:
Bitrix\Main\Loader::includeModule('mpm.options');
Gelion\BitrixOptions\Form::generate('youmodule.id', $options);
Пример файла options.php с использованием модуля.

Важно
Минимально необходимая версия php для работы модуля соответствует требованиями bitrix.

Создание табов и групп
Пример массива "$options" для создания вкладки с группой опций:
$options = [
    'DIV' => 'settings',
    'TAB' => 'Новая вкладка',
    'TITLE' => 'Новая вкладка',
    'ICON' => '',
    'GROUPS' => [
        'GROUP_CODE' => [
            'TITLE' => 'Название группы',
            'OPTIONS' => []
        ],
    ],
];
Создание опций
В массив "OPTIONS" группы передаётся массив нужных опций.

Строка
'PROP_ID' => [    'SORT' => 100,
    'TYPE' => 'STRING',
    'FIELDS' => [
        'TITLE' => 'Поле "Строка"',
        'DEFAULT' => 'Значение по умолчанию',
        'NOTES' => 'Это подсказка к полю "Строка"',
        'PLACEHOLDER' => 'Это плейсхолдер к полю "Строка"',
        'TAG' => 'Текст на теге',
        'READONLY' => false,
        'DISABLED' => false,
        'AUTOCOMPLETE' => false,
    ],
],
Число
'PROP_ID' => [
    'SORT' => 100,
    'TYPE' => 'NUMBER',
    'FIELDS' => [
        'TITLE' => 'Поле "Число"',
        'DEFAULT' => 42,
        'NOTES' => 'Это подсказка к полю "Число"',
        'PLACEHOLDER' => 'Это плейсхолдер к полю "Число"',
        'TAG' => 'Текст на теге',
        'READONLY' => false,
        'DISABLED' => false,
        'AUTOCOMPLETE' => false,
        'STEP' => 1,
        'MIN' => 0,
        'MAX' => 100,
    ],
],

Текст
'PROP_ID' => [
    'SORT' => 100,
    'TYPE' => 'TEXTAREA',
    'FIELDS' => [
        'TITLE' => 'Поле "Текст"',
        'DEFAULT' => 'Значение по умолчанию',
        'NOTES' => 'Это подсказка к полю "Текст"',
        'PLACEHOLDER' => 'Это плейсхолдер к полю "Текст"',
        'TAG' => 'Текст на теге',
        'READONLY' => false,
        'DISABLED' => false,
        'AUTOCOMPLETE' => false,
        'COLS' => 5,
        'ROWS' => 10,
    ],
],

Чекбокс
'PROP_ID' => [
    'SORT' => 100,
    'TYPE' => 'CHECKBOX',
    'FIELDS' => [
        'TITLE' => 'Поле "Чекбокс"',
        'DEFAULT' => true,
        'NOTES' => 'Это подсказка к полю "Чекбокс"',
    ],
],
Выбор цвета
'PROP_ID' => [
    'SORT' => 100,
    'TYPE' => 'COLORPICKER',
    'FIELDS' => [
        'TITLE' => 'Поле "Выбор цвета"',
        'NOTES' => 'Это подсказка к полю "Выбор цвета"',
        'DEFAULT' => '#FFFFFF',
    ],
],



Выпадающий список
'PROP_ID' => [
    'SORT' => 100,
    'TYPE' => 'DROPDOWN',
    'FIELDS' => [
        'TITLE' => 'Поле "Список"',
        'DEFAULT' => 'val-2',
        'NOTES' => 'Это подсказка к полю "Список"',
        'TAG' => 'Текст на теге',
        'OPTIONS' => [
            [
                'TITLE' => 'Первое свойство',
                'VALUE' => 'val-1',
            ],
            [
                'TITLE' => 'Второе свойство',
                'VALUE' => 'val-2',
            ],
        ],
    ],
],

Множественный список
'PROP_ID' => [
    'SORT' => 100,
    'TYPE' => 'MULTISELECT',
    'FIELDS' => [
        'TITLE' => 'Поле "множественный список"',
        'DEFAULT' => serialize(['val-1','val-2']),
        'NOTES' => 'Это подсказка к полю "множественный список"',
        'TAG' => 'Текст на теге',
        'OPTIONS' => [
            [
                'TITLE' => 'Первое свойство',
                'VALUE' => 'val-1',
            ],
            [
                'TITLE' => 'Второе свойство',
                'VALUE' => 'val-2',
            ],
        ],
    ],
],

HTML-редактор
'PROP_ID' => [
    'SORT' => 100,
    'TYPE' => 'HTMLEDITOR',
    'FIELDS' => [
        'TITLE' => 'Поле "HTML-редактор"',
        'NOTES' => 'Это подсказка к полю "HTML-редактор"',
    ],
    'PARAMS' => [
        'WIDTH' => '100%',
        'HEIGHT' => '500',
        'PHP' => false,
        'TASKBAR' => false,
    ]
],

Условия
'PROP_ID' => [
    'SORT' => 100,
    'TYPE' => 'CONDITIONS',
    'FIELDS' => [
        'TITLE' => 'Поле "Условия"',
        'NOTES' => 'Это подсказка к полю "Условия"',
    ],
],

Модификаторы опций
Также можно передать дополнительные параметры, влияющие на отображение формы на странице. Более подробно о принимаемых параметрах и их значениях можно узнать в документации Bitrix.
'PROP_ID' => [
    'FIELDS' => [],
    'PARAMS' => [
        'DISPLAY' => 'block',
        'WIDTH' => 'wd',
        'HEIGHT' => 'md',
        'COLOR' => 'default',
        'TAGCOLOR' => 'default',
        'MODIFICATOR' => false,
    ],
],

Свои типы опций
Чтобы создать свой тип опции нужно создать свой класс, унаследовавшись от класса Gelion\BitrixOptions\TypeBase и с интерфейсом Gelion\BitrixOptions\TypeInterface. Затем, где-нибудь перед вызовом генератора зарегистрировать сопоставление названий типов, и классов, которые должны быть инициализированы.
Gelion\BitrixOptions\Form::typesRegister([
    'CUSTOM_TYPE' => MyCustomOptionType::class,
]);

Зарегистрированные типы опций, при совпадении названий будут перебивать стандартные.

Поддержка
Telegram — для обращений в техподдержку. Мы очень стараемся обработать все поступившие заявки в течение того рабочего дня, когда они поступили. Но иногда возможны задержки, за которые заранее хотим перед вами извиниться


Любые вопросы и проблемы, для решения которых нам нужно видеть сайт, админку или хостинг принимаются только на указанный эл. почту.
Пожелания по содержанию обращения в техподдержку ниже.

Для того, чтобы ваше обращение было рассмотрено максимально быстро, в письме указывайте:

  • Купон на установку решения (который вам пришел после покупки)
  • Доступ к панели управления Битрикс вашего сайта (адрес входа, логин и пароль от учётной записи администратора)

Чтобы мы вам помогли с первого раза, учтите следующие пожелания к заявке:  

  • Чётко опишите, в чём именно ошибка и после каких действий она возникает
  • Приложите скриншот с проблемой
  • Напишите, как на ваш взгляд должно работать

Другие решения разработчика

Решение добавлено в корзину

Перейдите в корзину и оформите заказ или продолжите покупки
Перейти в корзину
Продолжить покупки