Привет @KhoiUSA
Спасибо, я объединил обновление: DEV: Migrate FA5 icons to FA6 by VaperinaDEV · Pull Request #25 · VaperinaDEV/discourse-guest-gate-theme-component · GitHub ![]()
Спасибо за обновление!
Здравствуйте. Мы попытались установить этот компонент на новый экземпляр Discourse, но при включении отображения модального окна получаем ошибку:
Ссылка ведет на этот пост.
Учитывая, что пост датирован 2023 годом, удивительно, что для этого компонента требуется такое обновление. Не могли бы вы подсказать, не допустили ли мы ошибку при установке?
Привет
Можете удалить компонент и переустановить этот: GitHub - VaperinaDEV/discourse-guest-gate-theme-component: Forced login / registration popup insired by Quora · GitHub, чтобы убедиться, что вы используете правильный компонент?
Спасибо за это. Теперь всё работает!
Тем не менее, я не могу обновить текст в модальном окне. Заголовок обновляется успешно, но редактировать основной текст не получается. Не те ли поля я редактирую?
Привет @Don, спасибо за такой отличный компонент. Я вижу, что назначение (и даже название) компонента — запускаться для гостей/анонимных пользователей. Можно ли добавить настройки для условий на основе групп или уровня доверия? Я пытаюсь отображать модальное окно для авторизованных пользователей, которые посещают любую тему в определённой категории. Это дополнит Discourse-subscriptions и category-lockdown.
Привет @Don
Спасибо за компонент. Мы используем ваш плагин на форуме https://community.escapecollective.com/. Однако у нас возникла проблема: при установке параметра max_guest_topic_views больше 1 (в нашем случае 3) модальное окно появляется на мгновение и сразу же исчезает. Я полагаю, что это происходит потому, что Discourse выполняет «мягкую» перезагрузку страницы (маршрутизация Ember SPA) при загрузке JS, и в этот момент счётчик просмотров сбрасывается, из-за чего модальное окно сразу исчезает. Думаю, это произошло после обновления Discourse до версии 3.5.0.beta9-dev. Пожалуйста, помогите разобраться в этом.

В качестве одного из примеров: я пытаюсь воспроизвести эту проблему, но у меня не получается.
Я только что обновился до последней версии, и этот компонент темы, похоже, работает как задумано.
Вы пробовали использовать его в теме по умолчанию?
@merefield Спасибо за ваш ответ, но да, мы используем тему по умолчанию. Вы можете проверить это самостоятельно по адресу https://community.escapecollective.com/. Вот ещё одно видео, демонстрирующее проблему:

Что-то отображается в консоли JavaScript?
@merefield ничего
Привет ![]()
Похоже, это проблема компонента темы Topic Cards. При клике на заголовок темы происходит полная перезагрузка страницы, что и вызывает эту проблему. Если открыть тему, кликнув в любом месте, кроме заголовка, то «Ворота для гостей» будут работать нормально, так как принудительной перезагрузки страницы не произойдет и будет выполнена только загрузка SPA.
Пожалуйста, сообщите об этой проблеме в теме компонента темы Topic Cards.
Привет @Don
Да, вы правы: если я отключу компонент Topic Cards, всё работает как ожидалось. Я напишу в теме про Topic Cards, так как нам нужны оба этих компонента.
Спасибо!
Предварительный просмотр списков тем также имеет вариант широкого формата для плиток, аналогичный карточкам тем … и он в настоящее время работает с GG. Возможно, вы сможете попробовать это, пока ждете исправления для карточек тем …
Всем привет,
Спасибо за плагин, он работает отлично.
У меня только один вопрос: я не нашёл настроек для центрирования заголовка. Это нормально?
Отличный компонент
, хотел узнать, есть ли возможность делать переносы строк или абзацы в поле custom_gate.little_text
Спасибо за обратную связь
Привет ![]()
Да, абсолютно. Поскольку custom_gate.little_text рендерится как htmlSafe, вы можете использовать там HTML. Например, для переноса строк можно использовать <br>, а для отдельных абзацев — теги <p>.
Например:
Первая строка.<br>
Вторая строка.
или
<p>Первый абзац.</p>
<p>Второй абзац.</p>
Привет ![]()
Извините за задержку.
Да, на данный момент для этого нет специальной настройки, но вы можете добиться этого с помощью простого компонента темы.
.d-modal.gate {
.d-modal__title {
margin: auto;
}
}
Гостевой шлюз 2.0 скоро выйдет! 
В настоящее время разрабатывается новая версия Гостевого шлюза, и это гораздо более масштабное обновление, чем простое повышение версии.
Версия 2.0 предлагает переработанную систему триггеров, более современную реализацию, значительно больше вариантов настройки и лучшую совместимость с текущими версиями Discourse.
Новая система триггеров
Самое главное изменение в версии 2.0 заключается в том, что вы больше не ограничены только просмотрами страниц.
Теперь вы можете выбрать, как должен активироваться Гостевой шлюз:
-
Просмотры страниц — показывать шлюз после заданного количества просмотров страниц
-
Время — показывать его после того, как пользователь проведет определенное время на странице
-
Прокрутка — показывать его, когда посетитель прокрутит страницу на заданный процент
-
Лайтбокс — показывать его, когда гость открывает изображение
-
Любой — позволять нескольким типам триггеров активировать шлюз
Это позволяет создавать гораздо более сложные стратегии гостевого шлюза.
Новое поведение повторения
Теперь вы можете контролировать, что произойдет после отображения Гостевого шлюза:
-
Повторный триггер — показывать его снова каждый раз, когда происходит заданный триггер
-
Случайные просмотры страниц — показывать его снова после случайного количества просмотров страниц
-
Один раз за сессию — показывать его только один раз во время сессии браузера
Также появился новый настраиваемый порог для повторения при случайных просмотрах страниц.
Существующая настройка «Показывать только один раз» по-прежнему поддерживается для обратной совместимости.
Задержанное отображение
Теперь шлюз можно отображать с настраиваемой задержкой после срабатывания триггера.
Например, вы можете активировать шлюз после прокрутки на 50%, но подождать еще 750 мс, прежде чем открывать модальное окно.
Это может сделать взаимодействие гораздо менее навязчивым.
Больше контроля над модальным окном
Версия 2.0 добавляет несколько новых вариантов настройки:
-
Компактное, стандартное или широкое модальное окно
-
Показывать или скрывать заголовок модального окна
-
Настраиваемое позиционирование заголовка
-
Улучшенное адаптивное поведение
Улучшенный пользовательский шлюз
Пользовательский шлюз также получил существенное обновление.
Теперь вы можете:
-
Добавлять альтернативный (
alt) текст к пользовательскому изображению -
Лучше контролировать содержимое пользовательского текста
-
Использовать HTML-содержимое в пользовательском поле для небольшого текста, включая абзацы и переносы строк
-
Лучше контролировать цвета и отступы
Пользовательское содержимое также обрабатывается более чисто в новой реализации.
Модернизированная реализация
Под капотом Гостевой шлюз 2.0 был значительно модернизирован.
Старая реализация опиралась на устаревший инициализатор плагинов, отслеживание страниц Discourse и обработку лайтбокса на основе jQuery.
Версия 2.0 теперь использует современный инициализатор API Discourse и API изменений страниц, с выделенным контроллером шлюза, отвечающим за управление триггерами, таймерами, слушателями прокрутки, состоянием сессии и состоянием модального окна.
Это также делает компонент более удобным для поддержки и расширения в будущем.
Существующие установки учитываются
Одной из важных целей версии 2.0 было избежать необходимости заставлять существующих пользователей вручную перестраивать свою конфигурацию.
Новая версия включает миграцию настроек, которая преобразует старые настройки Гостевого шлюза в их новые аналоги.
Например, старая настройка max_guest_topic_views автоматически мигрируется в новую конфигурацию просмотров страниц и поведение повторения.
Старая настройка лайтбокса также автоматически отображается на новую систему триггеров.
Таким образом, при обновлении поведение существующих установок должно сохраняться максимально близко к оригиналу.
Более чистая конфигурация
Ряд существующих настроек также был очищен, а их описания переписаны, чтобы сделать интерфейс администратора более понятным.
Логика входа / регистрации, Discourse Connect, пользовательского URL и кнопки также была переработана внутренне.
Что дальше?
Гостевой шлюз 2.0 в настоящее время дорабатывается и тестируется.
Это выпуск предназначен для того, чтобы стать надежной основой для будущих функций Гостевого шлюза, одновременно предоставляя администраторам гораздо больше контроля над тем, когда, где и как появляется шлюз.
Если вы уже используете Гостевой шлюз, ваша существующая конфигурация должна быть автоматически мигрирована при обновлении.
Хотите протестировать v2.0 заранее?
Вы можете попробовать ветку здесь: Ветка v2.0 на GitHub




