Persona - Personalise Your Forum Identity

Persona - Personalise Your Forum Identity 1.3.1

Нет прав для скачивания
Поддержка разрешений — в Persona теперь используется встроенная система разрешений XenForo. В разделе «Группы и разрешения» в панели администратора вы найдете опцию «Можно использовать Persona». Установите для нужных групп значение «Разрешить», а для остальных — «Нет» или «Никогда». Уже примененные стили продолжают отображаться; пользователи без разрешения просто не могут их редактировать или создавать новые.

Также в этом обновлении:
  • Исправлена ошибка, из-за которой эффекты радуги, мерцания и цветового цикла могли зависать при использовании определенных стилей
  • Загрузка пользовательских шрифтов больше не приводит к фатальной ошибке при сохранении
  • Вывод прослушивателя теперь кэшируется (время жизни кэша — 5 минут) для снижения нагрузки на запросы
  • Убраны оставшиеся файлы резервных копий из пакета
  • Улучшена очистка URL-адресов для встраивания
Что исправлено:
  • Поля шрифтов (имя пользователя и заголовок) теперь проверяются на соответствие известному списку шрифтов перед сохранением. Раньше это был произвольный текст, а значит, искусственно созданное значение могло попасть в тег ссылки на Google Fonts или в сгенерированный CSS. Теперь и то, и другое заблокировано.
  • Направление градиента, стили границ, преобразования текста, названия иконок, формы шильдиков и все другие ограниченные поля теперь проверяются на соответствие строгим спискам разрешенных значений при сохранении. Все, что не входит в список, автоматически заменяется значениями по умолчанию.
  • Значения цвета проверяются на соответствие строгому регулярному выражению (только hex, rgb, rgba, hsl, hsla). Через поля цвета больше нельзя вводить произвольные строки.
  • Поля URL проверяются на наличие схемы (только http/https), а схемы javascript/data/vbscript явно блокируются.
  • Проверка на блокировку пользователя теперь распространяется на действия «Импорт», «Копировать», «Вернуть» и «Сброс». Ранее она применялась только к действию «Сохранить» и загрузке главной страницы.
  • Проверка уровня доступа теперь происходит внутри основного метода сохранения, поэтому при импорте кода стиля, копировании из демонстрации или возврате к предыдущей версии фреймы, бейджи и темы, доступ к которым ограничен уровнем, больше не могут быть проигнорированы.
  • Названия шрифтов очищаются перед внедрением в теги HTML-ссылок в обработчике контейнера страницы.
Вся проверка выполняется в функции saveUserStyle(), через которую проходит каждый путь выполнения кода, поэтому обходных путей не осталось.

Обновление: Загрузите и установите дополнение через установщик дополнений, как обычно. Никаких изменений в базе данных не требуется.
Фон и рамка имени пользователя не отображаются в виджетах боковой панели. Когда пользователь настраивает цвет фона и / или рамку для своего имени пользователя, оно корректно отображается во всплывающих подсказках, в областях предварительного просмотра в режиме реального времени и публикации, но не на боковой панели "Участники онлайн" или в аналогичных контекстах встроенного списка. Основной причиной было правило переопределения, которое явно удаляло 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
Оболочка значка теперь использует центрированную гибкую компоновку
Индикатор «таблетки настроения» больше не смещает выравнивание имени пользователя
Рекомендуется обновить все установки.
Назад
Сверху Снизу