Как узнать что включен режим правки?

47
Алексей,
Как узнать что включен режим правки?

В коде. Есть метод $APPLICATION->GetShowIncludeAreas(), возвращает true если режим правки включен.

В коде. Есть метод $APPLICATION->GetShowIncludeAreas(), возвращает true если режим правки включен. Всё просто:

global $APPLICATION;
if ($APPLICATION->GetShowIncludeAreas()) {
	// режим правки включен
} else {
	// режим правки выключен
}

Тут столкнулся с интересным багом. В режиме правки компоненты добавляют различные кнопки (например для добавления/удаления элементов инфоблока). Делается это с помощью метода CIBlock::GetPanelButtons(). Так вот в этом методе делаются запросы в БД сразу, без проверки "а нужны ли вообще данные для создания кнопок" (включен ли режим правки). Не очень оптимально, но это ядро, в него просто так правки не внести.

Опубликовано 19 октября 2021
разработчику, админка
Поделиться
Похожие статьи
Как скрыть неактивные инфоблоки в админке
На большом сайте количество инфоблоков быстро растёт, многие из них служебные и не предназначены для...
Читать дальше » 0
Алексей,
Комментарии
Авторизуйтесь чтобы получать уведомления об ответе
В коде. Есть метод $APPLICATION->GetShowIncludeAreas(), возвращает true если режим правки включен.