andreyryabin/sprint.options

Content options for 1C-Bitrix

Installs: 4 750

Dependents: 0

Suggesters: 0

Security: 0

Stars: 18

Watchers: 6

Forks: 6

Open Issues: 0

Type:bitrix-module

2.5.0 2023-12-19 14:55 UTC

This package is auto-updated.

Last update: 2024-04-19 15:53:58 UTC


README

Latest Stable Version Total Downloads

README

Скачайте код модуля через composer

composer require andreyryabin/sprint.options

{
  "extra": {
    "installer-paths": {
      "bitrix/modules/{$name}/": ["type:bitrix-module"]
    }
  },
  "require": {
    "andreyryabin/sprint.options": "dev-master"
  },
}

Установите модуль через админку (маркетплейс - установленные решения)

Появится файл /bitrix/php_interface/sprint.options.php или /local/php_interface/sprint.options.php

Редактируйте его содержимое на свое усмотрение, пример

Предпочтительный формат

<?php

use Sprint\Options\Builder\Builder;
use Sprint\Options\Custom\FileOption;
use Sprint\Options\Custom\SelectOption;
use Sprint\Options\Custom\StringOption;
use Sprint\Options\Custom\TextareaOption;

return (new Builder)
    ->setTitle('Настройки контента')
    ->setSort(60)
    ->addPage('Страница 1')
    ->addTab('О компании')
    ->addCustomOption(
        (new StringOption('EMAIL'))
            ->setTitle('Email компании')
            ->setDefault('about@example.com')
            ->setWidth('400')
    )
    ->addCustomOption(
        (new TextareaOption('OFFICE'))
            ->setTitle('Адрес офиса')
            ->setDefault('Адрес офиса')
            ->setWidth('400')
            ->setHeight('100')
    )
    ->addTab('Общие')
    ->addCustomOption(
        (new SelectOption('SELECT1'))
            ->setTitle('Значение из списка')
            ->setDefault('var2')
            ->setWidth(100)
            ->setOptions([
                'var1' => 'Вариант 1',
                'var2' => 'Вариант 2',
                'var3' => 'Вариант 3',
                'var4' => 'Вариант 4',
            ])
    )
    ->addPage('Страница 2')
    ->addTab('Таб 1')
    ->addCustomOption(
        (new FileOption('PICTURE'))
            ->setTitle('Фото офиса')
            ->setAllowImages(1)
    )
    ->addCustomOption(
        (new FileOption('FILES'))
            ->setTitle('Документы')
            ->setAllowFiles(0)
    );

Устаревший формат 1


use Sprint\Options\Builder\Builder;

return (new Builder)
    ->setTitle('Настройки контента')
    ->setSort(60)
    ->addPage('Страница 1')
    ->addTab('О компании')
    ->addOption('EMAIL', [
        'TITLE'   => 'Email компании',
        'DEFAULT' => 'about@example.com',
        'WIDTH'   => '400',
    ])
    ->addOption('OFFICE', [
        'TITLE'   => 'Адрес офиса',
        'DEFAULT' => 'Адрес офиса',
        'WIDTH'   => '600',
        'HEIGHT'  => '100',
    ])
    ->addTab('Общие')
    ->addOption('SELECT1', [
        'TITLE'   => 'Значение из списка',
        'DEFAULT' => 'var2',
        'OPTIONS' => [
            'var1' => 'Вариант 1',
            'var2' => 'Вариант 2',
            'var3' => 'Вариант 3',
            'var4' => 'Вариант 4',
        ],
    ])
    ->addPage('Страница 2')
    ->addTab('Таб 1')
    ->addOption('EMAIL_OFFICE_1', [
        'TITLE'   => 'Email офиса 1',
        'DEFAULT' => 'about1@example.com',
        'WIDTH'   => '400',
    ])
    ->addTab('Таб 2')
    ->addOption('EMAIL_OFFICE_2', [
        'TITLE'   => 'Email офиса 2',
        'DEFAULT' => 'about2@example.com',
        'WIDTH'   => '400',
    ]);

Устаревший формат 2

return array(
    'EMAIL' => array(
        'TITLE' => 'Email',
        'DEFAULT' => 'about@example.com',
        'WIDTH' => '400',
        'TAB' => 'О компании',
    ),

    'OFFICE' => array(
        'TITLE' => 'Адрес офиса',
        'DEFAULT' => 'Адрес офиса',
        'WIDTH' => '600',
        'HEIGHT' => '100',
        'TAB' => 'О компании',
    ),

    'SELECT1' => array(
        'TITLE' => 'Значение из списка',
        'DEFAULT' => 'var2',
        'OPTIONS' => array(
            'var1' => 'Вариант 1',
            'var2' => 'Вариант 2',
            'var3' => 'Вариант 3',
            'var4' => 'Вариант 4',
        ),
    ),
);


Подключите модуль в init.php: CModule::IncludeModule("sprint.options");

Используйте метод sprint_options_get в шаблонах и компонентах проекта чтобы вывести нужные значения

<?=sprint_options_get('EMAIL')?>

Значения параметров можно менять через админку, появится страница (Контент - Настройки контента) /bitrix/admin/sprint_options.php

Измененные параметры можно сбросить кнопкой сброса до значений в файле sprint.options.php (ключ DEFAULT)

sprint.options.png