National Flags

как использовать динамическую переменную?

<img class="nationalflag-usersummary" src="/plugins/discourse-nationalflags/images/nationalflags/{{flagsource}}.png" />

в

<img class="nationalflag-usersummary" src="/plugins/{{PLUGIN_NAME}}/images/nationalflags/{{flagsource}}.png" />

upd:
код CSS в моём плагине
forum - как использовать динамическую переменную?
upd2: https://stackoverflow.com/questions/8608498/have-a-variable-in-images-path-in-sass

@font-face {
  font-family: Hellix-Light;
  src: url("/plugins/forum/fonts/Hellix-Light/Hellix-Light.eot");
  src: url("/plugins/forum/fonts/Hellix-Light/Hellix-Light.otf");
  src: url("/plugins/forum/fonts/Hellix-Light/Hellix-Light.woff");
  src: url("/plugins/forum/fonts/Hellix-Light/Hellix-Light.woff2");
}
3 лайка

У меня это уже установлено, работает отлично! Можно ли адаптировать его для более локального уровня? Например, у меня есть группа, в основном из США, и мы хотели бы использовать формы штатов или флаги штатов.

Конечно, это должно быть просто, и вы, вероятно, сможете сделать всё это прямо в GitHub (без использования git):

Как добавить свои флаги или эмблемы:

  1. Сделайте форк репозитория discourse-nationalflags/public/images/nationalflags at master · Ebsy/discourse-nationalflags · GitHub. Это делается одной кнопкой, но, возможно, вам понадобится новый аккаунт GitHub, если у вас его ещё нет.

image

  1. Отредактируйте (в своём форке) файл discourse-nationalflags/config/flags.yml at master · Ebsy/discourse-nationalflags · GitHub, чтобы добавить коды новых эмблем и названия изображений. Коды эмблем должны быть уникальными! Используйте понятное соглашение об именовании. Это можно сделать прямо в GitHub.

  1. Отредактируйте (аналогично) файл discourse-nationalflags/config/locales/client.en.yml at master · Ebsy/discourse-nationalflags · GitHub, чтобы добавить описания — по одному для каждой новой эмблемы/флага, которую вы хотите добавить. Коды должны соответствовать тем, что указаны в шаге 2.

  2. Загрузите свои новые изображения (предпочтительно в формате .png размером 64px x 48px), имена файлов которых соответствуют записям, сделанным в шаге 2, в (в своём форке) discourse-nationalflags/public/images/nationalflags at master · Ebsy/discourse-nationalflags · GitHub

  1. Замените URL плагина в вашем файле app.yml на адрес вашего форка https://github.com/ваш-логин-на-github/discourse-nationalflags

  2. Пересоберите приложение: ./launcher rebuild app

:us: :tada:

6 лайков

Имея сообщество с людьми из множества интересных, но необычных стран, я заметил, что, похоже, отсутствует текст alt для описания названия страны при наведении на изображения флагов.

Я не очень хорошо разбираюсь в флагах — стран так много! Есть ли шанс добавить тег alt для изображения в ближайшее время? :slight_smile:

9 лайков

Похоже, этот плагин больше не работает с текущей версией Discourse, что в моем случае предотвращает пересборку.

3 лайка

Не удалось воспроизвести. Я только что пересобрал два сайта, использующих его, и не столкнулся с проблемами при пересборке, а также не заметил никаких сбоев в работе функционала.

4 лайка

Интересно, хотя это уже хорошо. Не знаю, не конфликтует ли это с другим плагином? Я попробую выяснить, какой именно (если вообще какой-то) вызывает проблему. Спасибо.

3 лайка

Есть ли способ получить локаль или флаг из публичного профиля? Например, в моём профиле отображается канадский флаг, но я хочу получить часть ca, используя моё имя пользователя. Профиль публичный, поэтому вопросы конфиденциальности не актуальны. Как можно получить флаг пользователя через HTTP?

2 лайка

Конечно, просто добавьте .json в конец адреса, и он вернёт только данные.

Вы увидите все пользовательские поля, включая «nationalflags_iso».

Для просмотра данных Firefox лучше, чем Chrome.

5 лайков

Спасибо. Это именно то, что я искал.

5 лайков

Интересует, автоматически ли это помечает всех пользователей по IP-адресу.

2 лайка

Не могли бы вы, пожалуйста, помочь мне и подсказать, как переместить флаг рядом с именем пользователя, как здесь:

2 лайка

Можно ли сделать поле «Национальный флаг» обязательным при регистрации?

Последнее обновление ядра сломало этот плагин

** НЕСОВМЕСТИМЫЙ ПЛАГИН **

Сборка Discourse невозможна из-за ошибок в плагине по пути
/var/www/discourse/plugins/discourse-nationalflags

Попробуйте удалить этот плагин и выполнить сборку снова!
I, [2020-11-05T14:45:08.794566 #1]  INFO -- :
I, [2020-11-05T14:45:08.795106 #1]  INFO -- : Завершение асинхронных процессов
I, [2020-11-05T14:45:08.795163 #1]  INFO -- : Отправка сигнала INT для HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/12/bin/postmaster -D /etc/postgresql/12/main pid: 49
I, [2020-11-05T14:45:08.795215 #1]  INFO -- : Отправка сигнала TERM для exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 166
2020-11-05 14:45:08.795 UTC [49] LOG:  получен запрос быстрого завершения
166:signal-handler (1604587508) Получен сигнал SIGTERM, планирование завершения...
2020-11-05 14:45:08.799 UTC [49] LOG:  прерывание всех активных транзакций
2020-11-05 14:45:08.802 UTC [49] LOG:  фоновый рабочий "запускщик логической репликации" (PID 58) завершил работу с кодом выхода 1
2020-11-05 14:45:08.803 UTC [53] LOG:  завершение работы
166:M 05 Nov 2020 14:45:08.808 # Пользователь запросил завершение работы...
166:M 05 Nov 2020 14:45:08.808 * Сохранение финального снимка RDB перед выходом.
2020-11-05 14:45:08.815 UTC [49] LOG:  система баз данных завершена
166:M 05 Nov 2020 14:45:09.329 * База данных сохранена на диск
166:M 05 Nov 2020 14:45:09.329 # Redis готов к выходу, до свидания...
1 лайк

Полагаю, это может исправить проблему, создан PR:

простите за опечатку! :grimacing:

4 лайка

Спасибо, Роб, к сожалению, проблема вернулась.

** НЕСОВМЕСТИМЫЙ ПЛАГИН **

Сборка Discourse невозможна из-за ошибок в плагине:
/var/www/discourse/plugins/discourse-nationalflags

Попробуйте удалить этот плагин и выполнить сборку заново!
I, [2020-11-30T14:32:04.274044 #1]  INFO -- :
I, [2020-11-30T14:32:04.274927 #1]  INFO -- : Завершение асинхронных процессов
I, [2020-11-30T14:32:04.275231 #1]  INFO -- : Отправка INT для HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/12/bin/postmaster -D /etc/postgresql/12/main pid: 49
I, [2020-11-30T14:32:04.275574 #1]  INFO -- : Отправка TERM для exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 166
2020-11-30 14:32:04.275 UTC [49] LOG:  получен запрос на быстрое завершение работы
166:signal-handler (1606746724) Получен сигнал SIGTERM, планирование завершения работы...
2020-11-30 14:32:04.285 UTC [49] LOG:  отмена всех активных транзакций
2020-11-30 14:32:04.292 UTC [49] LOG:  фоновый процесс "logical replication launcher" (PID 58) завершился с кодом выхода 1
2020-11-30 14:32:04.292 UTC [53] LOG:  завершение работы
2020-11-30 14:32:04.321 UTC [49] LOG:  система баз данных завершена
166:M 30 Nov 2020 14:32:04.328 # Пользователь запросил завершение работы...
166:M 30 Nov 2020 14:32:04.329 * Сохранение финального снапшота RDB перед выходом.
166:M 30 Nov 2020 14:32:04.378 * База данных сохранена на диск
166:M 30 Nov 2020 14:32:04.379 # Redis готов к выходу, до свидания...


ОШИБКА
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' завершилась с ошибкой, код возврата #<Process::Status: pid 1628 exit 1>
Место возникновения ошибки: /pups/lib/pups/exec_command.rb:112:in `spawn'
Выполнение не удалось с параметрами {"cd"=>"$home", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
a8ea6480b7070def0c0cfa68b65d9bdb510bc53284b3c0e5dfa6441d128ab199
** НЕ УДАЛОСЬ ЗАПУСТИТЬ ** пожалуйста, прокрутите вверх и найдите сообщения об ошибках, возникших ранее; их может быть несколько.
Утилита ./discourse-doctor может помочь в диагностике проблемы.
2 лайка

Да, я не совсем понимаю, почему API кастомного мастера снова изменился. Я поговорю с командой.

3 лайка

Хорошо, это потребует двухэтапного исправления.

Первый этап — ускорить решение проблемы с падением сборки:

Я только что снова пересобрал сервер, и теперь сборка проходит успешно.

К сожалению, я не думаю, что это заставит плагин с флагами снова работать с CW. В CW была проведена огромная рефакторинг, из-за чего эта интеграция может больше не работать.

В ближайшее время я вернусь с изменениями, чтобы действительно заставить это работать внутри Wizards.

3 лайка

Привет, мне нужна помощь. Я недавно установил плагин, но не могу заставить его работать. Он включен, я вижу настройки в предпочтениях пользователя, но список стран пуст:
изображение
Что-то я упускаю?

1 лайк

Что происходит, когда вы нажимаете стрелку вниз? У меня работает!

1 лайк