Посмотрите видео ниже, чтобы узнать, как установить наш сайт в виде веб-приложения на главном экране.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
В этом обновлении добавлена настройка разрешений для групп пользователей и поддержка стилей, не зависящих от платформы.
- Настраиваемые разрешения ACP: Разрешение Persona
canUsePersonaтеперь полностью интегрировано со встроенными разрешениями группы пользователей XenForo. Перейдите в раздел Группы и разрешения> Разрешения группы пользователей в панели администратора, чтобы настроить, каким группам разрешено управлять стилем оформления своей учетной записи на форуме.- Поддержка, не зависящая от стиля: Оформление Persona теперь не зависит от стиля и будет легко применяться к любой теме / стилю.
- Стабильность и исправления: доработка внутреннего кода для обеспечения плавной установки и работы на платформах XenForo 2.3+.
Поддержка разрешений — в Persona теперь используется встроенная система разрешений XenForo. В разделе «Группы и разрешения» в панели администратора вы найдете опцию «Можно использовать Persona». Установите для нужных групп значение «Разрешить», а для остальных — «Нет» или «Никогда». Уже примененные стили продолжают отображаться; пользователи без разрешения просто не могут их редактировать или создавать новые.
Также в этом обновлении:
- Исправлена ошибка, из-за которой эффекты радуги, мерцания и цветового цикла могли зависать при использовании определенных стилей
- Загрузка пользовательских шрифтов больше не приводит к фатальной ошибке при сохранении
- Вывод прослушивателя теперь кэшируется (время жизни кэша — 5 минут) для снижения нагрузки на запросы
- Убраны оставшиеся файлы резервных копий из пакета
- Улучшена очистка URL-адресов для встраивания
Что исправлено:
Вся проверка выполняется в функции saveUserStyle(), через которую проходит каждый путь выполнения кода, поэтому обходных путей не осталось.
- Поля шрифтов (имя пользователя и заголовок) теперь проверяются на соответствие известному списку шрифтов перед сохранением. Раньше это был произвольный текст, а значит, искусственно созданное значение могло попасть в тег ссылки на Google Fonts или в сгенерированный CSS. Теперь и то, и другое заблокировано.
- Направление градиента, стили границ, преобразования текста, названия иконок, формы шильдиков и все другие ограниченные поля теперь проверяются на соответствие строгим спискам разрешенных значений при сохранении. Все, что не входит в список, автоматически заменяется значениями по умолчанию.
- Значения цвета проверяются на соответствие строгому регулярному выражению (только hex, rgb, rgba, hsl, hsla). Через поля цвета больше нельзя вводить произвольные строки.
- Поля URL проверяются на наличие схемы (только http/https), а схемы javascript/data/vbscript явно блокируются.
- Проверка на блокировку пользователя теперь распространяется на действия «Импорт», «Копировать», «Вернуть» и «Сброс». Ранее она применялась только к действию «Сохранить» и загрузке главной страницы.
- Проверка уровня доступа теперь происходит внутри основного метода сохранения, поэтому при импорте кода стиля, копировании из демонстрации или возврате к предыдущей версии фреймы, бейджи и темы, доступ к которым ограничен уровнем, больше не могут быть проигнорированы.
- Названия шрифтов очищаются перед внедрением в теги HTML-ссылок в обработчике контейнера страницы.
Обновление: Загрузите и установите дополнение через установщик дополнений, как обычно. Никаких изменений в базе данных не требуется.
Фон и рамка имени пользователя не отображаются в виджетах боковой панели. Когда пользователь настраивает цвет фона и / или рамку для своего имени пользователя, оно корректно отображается во всплывающих подсказках, в областях предварительного просмотра в режиме реального времени и публикации, но не на боковой панели "Участники онлайн" или в аналогичных контекстах встроенного списка. Основной причиной было правило переопределения, которое явно удалялоbackground,borderиpaddingиз имен пользователей внутри.p-body-sidebarи.contentRowконтейнеров. Исправление удаляет эти правила удаления и применяетсяdisplay: inline-block; vertical-align: baselineвместо этого, поэтому фоновые таблицы и границы отображаются чисто в виде встроенных списков, разделенных запятыми, во всех темах.
Обрезка фона при использовании градиента и фонового цвета. Если у пользователя был и текстовый градиент, и фоновый цвет, то градиентbackground-clip: textприменялся как к внешней обертке, так и к внутреннему элементу, обрезая цвет до формы текста. Теперь генератор CSS при необходимости сбрасывает внешний элемент доbackground-clip: border-box, благодаря чему цвет остается видимым за градиентным текстом.
Примечания по обновлению
Загрузите и установите как обычно. CSS автоматически перегенерируется для всех пользователей. Никаких изменений в настройках не требуется. Рекомендуется обновить все установки.
Ошибка: regenerateUserCss() в Repository/Persona.php требовал двух аргументов ($userId и array $ style), но Setup.php вызывал его только с $ userId на этапе восстановления после обновления. Это приводило к ошибке ArgumentCountError при каждом обновлении с более старой версии (например, с 1.0.1 до 1.1.3 или 1.1.4).
Исправление: сделали $style необязательным параметром (массив $style = null). Если он не указан, метод автоматически извлекает данные о стиле пользователя из сущности UserStyle. Оба варианта вызова работают: путь обновления Setup (один аргумент) и обычный путь сохранения (два аргумента).
Исправлена ошибка, из-за которой имена пользователей и пользовательские заголовки на боковой панели сообщений могли смещаться от центра при активных функциях Persona. Это касалось пользователей с табличками с именами, значками, таблетками настроения или эффектами для имен пользователей (волна, отскок, глитч, печатная машинка) — из-за добавленных стилей имена и заголовки смещались от центра.
Изменения:
Добавлено исправление для центрирования сведений о пользователе на боковой панели сообщений при использовании пользовательского CSS для Persona
Оболочка значка теперь использует центрированную гибкую компоновку
Индикатор «таблетки настроения» больше не смещает выравнивание имени пользователя
Рекомендуется обновить все установки.