market 26.200.100 Заметное

Market 26.200.0–26.200.100: запрос на установку администратору и окно установки без галочек согласия

4 мин чтения
Узнавайте о ломающих изменениях Битрикса раньше, чем они доедут до прода: свежие разборы — в канале @bxmax_updates

В коробочный Битрикс24 пришли две версии market: 26.200.0 и 26.200.100. В 26.200.0 сотрудник без права установки приложений может отправить администратору запрос на установку, а из окна установки убрали галочки согласия с правилами и соглашениями. 26.200.100 чинит окно установки и тулбар страницы «Установленные».

Новое

Запрос на установку вместо тупика (26.200.0)

Раньше пользователь без права установки видел на карточке приложения подсказку «обратитесь к администратору». Теперь кнопка открывает попап «Недостаточно прав для установки» с кнопкой «Отправить запрос». После отправки кнопка блокируется, рядом появляется «Вы уже отправили запрос на установку». Компонент bitrix:market.detail узнаёт об этом из нового arResult['APP']['HAS_ACTIVE_INSTALL_REQUEST'].

Запросы хранит модуль rest, он же шлёт уведомления администраторам в IM и закрывает запросы после установки. Эту часть мы разобрали в rest 26.700.0–26.800.0. market добавил AJAX-действие market.Application.requestInstall и попап market.popup-request-install. Действие можно вызвать и со своей страницы портала, только подключите на ней ui.notification через \Bitrix\Main\UI\Extension::load('ui.notification'), иначе BX.UI.Notification не будет:

        BX.ajax.runAction('market.Application.requestInstall', {
	data: { code: 'vendor.warehouse', version: '3' },
}).then(() => {
	BX.UI.Notification.Center.notify({ content: 'Запрос отправлен администратору' });
}).catch(({ errors }) => {
	const alreadySent = errors.some((error) => error.code === 'already_exists');
	BX.UI.Notification.Center.notify({
		content: alreadySent ? 'Вы уже просили установить это приложение' : errors[0]?.message,
	});
});

    

Пустую версию сервер заменяет на 1, ошибки отдаёт команда rest как есть. Код already_exists значит, что у пользователя уже есть ожидающий запрос на эту версию, denied означает, что он может поставить приложение сам. Ещё бывают already_installed, если версия уже стоит, и not_found, если Маркет не вернул приложение.

Окно установки (26.200.0)

Чекбоксы согласия с Правилами каталога, Лицензионным соглашением и Политикой конфиденциальности из окна установки убрали. Вместо них стоит строка «Устанавливая приложение, вы принимаете условия...» со ссылками на документы, а кнопка установки сама отмечает все согласия. Если у вашего приложения в Маркете свой EULA, пользователь больше не ставит под ним отдельную галочку, принятие засчитывается нажатием кнопки.

Фразу с обратным отсчётом «Приложение откроется автоматически через...» из окна убрали. Финальный экран называется «Приложение установлено» (или «обновлено»). Кнопка на нём одна: «Открыть» у приложения с интерфейсом, «Настроить» у приложения с формой настроек, «Готово» у остальных. Под ней ссылка «Перейти в установленные». Таймер при этом остался, и приложение с интерфейсом через 15 секунд (по умолчанию) откроется само, хотя отсчёта на экране больше нет. В 26.200.100 таймер останавливается, если окно закрыть. Ещё в окне появилась строка о том, что для работы приложения будет создан системный пользователь. В подсказке к ней сказано, что это служебная учётная запись с правами того, кто ставит приложение.

Что сломается

Конструктор VibePlusApplicationLimit (26.200.0)

У Bitrix\Market\Application\VibePlusApplicationLimit, который появился в market 26.150.0, пять необязательных \Closure-провайдеров в конструкторе заменили на два адаптера и флаг. Код, который передавал замыкания (обычно это тесты), упадёт с TypeError, а при именованных аргументах с Error «Unknown named parameter». Адаптеры лежат в Internal, так что снаружи остался только флаг canManageApplications. Он заменяет проверку InstalledListAccess::isAdmin(), от которой зависит действие list в проекции:

        <?php declare(strict_types=1);

use Bitrix\Main\Loader;
use Bitrix\Market\Application\VibePlusApplicationLimit;

Loader::requireModule('market');

$projection = (new VibePlusApplicationLimit(canManageApplications: false))->getProjection();

    

Вызов без аргументов работает как раньше.

Мелочи и находки

  • market.list-item и карточка market.detail-component больше не тянут окно установки при загрузке страницы. Окно грузится при первом клике через Runtime.loadExtension('market.popup-install'), оборачивается в markRaw(), а повторные клики во время загрузки ждут тот же промис. Приём подходит любому своему расширению на ui.vue3, где модальное окно тяжелее списка (26.200.0).
  • Обработчики закрытия в карточке и списке приложений срабатывали на закрытие любого попапа. Теперь они проверяют, что закрылось окно установки, и останавливают таймер автозапуска приложения. После установки перезагружается слайдер текущего окна, а не верхний (26.200.100).
  • Заголовки scope берут последнюю версию фразы REST_SCOPE_<KEY>_MSGVER_N, перебирая номера по порядку. Если фразы нет, вместо пустой строки показывается имя scope или его ключ (26.200.100).
  • Тулбар страницы «Установленные» всегда запрашивает у Маркета METHOD_TOTAL_APPS (счётчик приложений, фильтры поиска), а раньше делал это, только если установленных приложений не было. Фильтры поиска без названия отбрасываются (26.200.100).

Новая версия вышла — разбор уже в Telegram

В канале @bxmax_updates публикуем каждый свежий разбор: что сломается, что устарело и что появилось в API. Узнаете до того, как обновите прод.

Подписаться

Читайте дальше

market 26.100.0 Рутинное Свежее

Market 26.100.0: установщик переехал на миграции ядра

`market` 26.100.0 вышел в коробку 14 сентября 2026 года (по данным официального канала «Битрикс24 changelog»), и его установщик теперь работает на миграциях ядра. `installDB()` вызывает `installMigrations()` из `\CModule` вместо `install.sql` через `$DB->RunSQLBatch()` и цикла регистрации обработчик…

1 мин
market 26.150.0 Заметное Свежее

Market 26.150.0: лимит приложений Vibe+, который в коробке не включается

`market` 26.150.0 вышел в коробку 22 сентября 2026 года (по данным официального канала «Битрикс24 changelog») и почти целиком посвящён лимиту числа приложений Маркета на тарифе Vibe+. Механика завязана на модуль `bitrix24`, которого в коробке нет, поэтому лимит не включается и попап о превышении не…

4 мин
socialnetwork 26.200.0 Безопасность Свежее

Socialnetwork 26.200.0: XSS в заявках и списке участников, копирование проекта по праву редактирования и курсор в log.blogpost.get

Socialnetwork 26.200.0 закрывает XSS в списке участников проекта и в заявках в группы, подмену ссылок через название группы и утечку задач в контекст AI. Копировать проект теперь можно только с правом на редактирование. Администраторам, у которых стояли 26.100.0 или 26.150.0, стоит проверить права с…

2 мин
sign 26.800.0 Безопасность Свежее

Sign 26.800.0: закрыли доступ к чужим документам, к приглашению на подпись можно дописать текст

Sign 26.800.0 для коробочного Битрикс24 закрывает несколько дыр в проверке прав: часть AJAX-экшенов модуля не проверяла, есть ли у пользователя доступ к конкретному документу, группе или участнику. Если на портале подписывают документы, с сотрудниками или с клиентами, обновляйтесь. Из нового — текст…

2 мин
Мы используем файлы cookie для улучшения работы сайта. Продолжая использовать сайт, вы соглашаетесь с нашей политикой конфиденциальности.
AI Домовой

AI Домовой История

на связи

пишет…
Нет истории чатов
AI Домовой

Нужна авторизация

Войдите, чтобы задавать вопросы AI Домовому.

Войти