После обновления до версии 3.4.0 наша тема перестала получать определения цветов для выбранной цветовой палитры. Я вижу CSS-файл, который должен содержать эти определения, но при активной теме он возвращается пустым.
В результате цвета не устанавливаются, а фоновый цвет любого всплывающего окна становится прозрачным, что делает сайт непригодным для использования. Временно мы используем стандартную светлую тему Light в качестве обходного решения.
Я перепробовал всё, что мог придумать. Например:
Ручное создание цветовой палитры
Удаление и повторная установка темы
Многочисленные попытки и ошибки на живом форуме и на тестовом форуме
Наша тема установлена из репозитория Git. В течение короткого времени форум выглядел нормально после восстановления старой копии темы из разработки (не из репозитория Git), но после следующего перезапуска Discourse проблема возникла снова.
На тестовом форуме удаление и повторная установка темы, похоже, исправило ситуацию. Однако на живом форуме такая процедура не помогла.
Когда я переключаюсь на стандартную тему, например Light или Dark, цветовая палитра работает корректно, и я вижу все цвета, определённые в том CSS-файле.
Что может быть причиной того, что определения цветов возвращаются пустыми для нашей темы? Есть ли идеи, как это исправить?
Это, похоже, потенциальная причина проблемы. В нашей теме есть настройка, которая хранит контент для страницы «О нас». Мне не кажется, что до обновления до Discourse 3.4.0 у нас были ошибки компиляции SCSS. Возможно, что-то изменилось в компиляции Sass, и теперь она стала более строгой?
Однако проблема, похоже, возникает при запуске Discourse. Если я просто отредактирую контент в этой настройке темы, ошибки SCSS в логе не будет. Если же перезапустить Discourse, возникнет ошибка SCSS, и файл CSS с определениями цветов снова станет пустым.
Вот код в теме, который использует эту настройку, в файле hbs. Контент в настройке — просто HTML.
Я переместил HTML из настройки темы прямо в hbs-файл, и это, похоже, решило проблему. Не уверен, почему, но Discourse 3.4.0 не принимает это в настройке темы.
Звучит правдоподобно. Есть ли где-нибудь документация по этому хелперу html-safe, чтобы я мог посмотреть, что он делает? Я искал в Google, но не смог найти.