Дополнительные модули Weblate¶
Для вашей установки доступно несколько дополнительных модулей.
Экспортер Git¶
Добавлено в версии 2.10.
Предоставляет доступ на чтение к нижележащему репозиторию Git через HTTP(S).
Установка¶
Добавьте
weblate.gitexport
в установленные приложения в файлеsettings.py
:
INSTALLED_APPS += ("weblate.gitexport",)
Экспортируйте существующие репозитории, выполнив перено своей базы данных после установки:
weblate migrate
Использование¶
The module automatically hooks into Weblate and sets the exported repository URL in
the Настройки компонента.
The repositories are accessible under the /git/
part of the Weblate URL, for example
https://example.org/git/weblate/main/
.
Репозитории для проектов, доступных публично, могут быть склонированы без аутентификации:
git clone 'https://example.org/git/weblate/main/'
Access to browse the repositories with restricted access (with Private
access control or when REQUIRE_LOGIN
is enabled)
requires an API token which can be obtained in your
user profile:
git clone 'https://user:KEY@example.org/git/weblate/main/'
Подсказка
По умолчанию у членов группы Пользователи и анонимных пользователей есть доступ к репозиториям публичных проектов через роли Доступ к репозиторию и Опытный пользователь.
Биллинг¶
Добавлено в версии 2.4.
Этот модуль используется на Облачном хостинге Weblate, для задания тарифных планов, а также отслеживания платежей и лимитов.
Установка¶
Добавьте weblate.billing
в установленные приложения в файле settings.py
:
INSTALLED_APPS += ("weblate.billing",)
Запустите миграцию базы данных для необязательной установки для модуля дополнительных структур базы данных:
weblate migrate
Использование¶
После установки вы сможете в интерфейсе администратора управлять тарификацией. У пользователей с включённой функцией тарификации в их профиле появится новая вкладка Тарифный план.
Также модуль тарифных планов даёт возможность администраторам проектов создавать новые проекты и компоненты без прав суперпользователя (см. Добавление проектов и компонентов перевода). Это становится возможным, если удовлетворены следующие условия:
Тариф не исчерпал заданные лимиты (любое избыточное использование ресурсов влечёт блокировку создания проектов/компонентов) и оплачен (если он не бесплатный)
Пользователь является администратором существующего тарифицируемого проекта или владельцем тарифного плана (последнее необходимо пользователям только подписавшимся на тариф для того, чтобы они могли загрузить новый проект).
При создании проекта пользователь может выбрать, к какому тарифу проект должен относиться, если у пользователя их несколько.
Правовые вопросы¶
Добавлено в версии 2.15.
Этот модуль используется на Облачном хостинге Weblate для вывода необходимых юридических документов. Он поставляется в комплекте с набором незаполненных документов. Предполагается, что вы самостоятельно заполните следующие шаблоны:
legal/documents/tos.html
Документ условий обслуживания
legal/documents/privacy.html
Документ политики конфиденциальности
legal/documents/summary.html
Краткий обзор условий обслуживания и политики конфиденциальности
Примечание
Legal documents for the Hosted Weblate service are available in this Git repository <https://github.com/WeblateOrg/wllegal/tree/main/wllegal/templates/legal/documents>.
Скорей всего, вы не сможете просто «взять и использовать» их, так как они вам не подойдут. Однако, вы можете скорректировать их под свои нужды или они могут послужить отправной точкой при написании собственных документов.
Установка¶
1. Add weblate.legal
to installed apps in
settings.py
:
INSTALLED_APPS += ("weblate.legal",)
# Optional:
# Social auth pipeline to confirm TOS upon registration/subsequent sign in
SOCIAL_AUTH_PIPELINE += ("weblate.legal.pipeline.tos_confirm",)
# Middleware to enforce TOS confirmation of signed in users
MIDDLEWARE += [
"weblate.legal.middleware.RequireTOSMiddleware",
]
Запустите миграцию базы данных для необязательной установки для модуля дополнительных структур базы данных:
weblate migrate
Отредактируйте юридические документы в каталоге
weblate/legal/templates/legal/
в соответствии с вашими условиями.
Использование¶
После установки и редактирования юридические документы будут отображаться в пользовательском интерфейсе Weblate.
Аватары¶
Аватары загружаются и кэшируются на стороне сервера, чтобы уменьшить утечку информации на сайты, обслуживающие их по умолчанию. Встроенную поддержку получения аватаров из настроенных для этого адресов электронной почты можно отключить с помощью параметра ENABLE_AVATARS
.
В настоящее время Weblate поддерживает:
См.также
Защита от спама¶
You can protect against spamming by users by using the Akismet service.
Install the akismet Python module (this is already included in the official Docker image).
Obtain the Akismet API key.
Store it as
AKISMET_API_KEY
orWEBLATE_AKISMET_API_KEY
in Docker.
Following content is sent to Akismet for checking:
Предложения от неаутентифицированных пользователей
Project and component descriptions and links
Примечание
Защита (среди всего прочего) зависит от IP-адреса клиента, для правильной её настройки, пожалуйста, смотрите раздел Работа за обратным прокси.
Подписание коммитов Git с помощью GnuPG¶
Добавлено в версии 3.1.
Все коммиты могут быть подписаны с помощью ключа GnuPG вашего экземпляра Weblate.
1. Turn on WEBLATE_GPG_IDENTITY
. (Weblate will generate a GnuPG
key when needed and will use it to sign all translation commits.)
Эта функция требует установки GnuPG 2.1 или новее.
Этот ключ будет хранится по пути, указанному в DATA_DIR
, а открытый ключ будет отображаться на странице «О Weblate» (/about/):
2. Alternatively you can also import existing keys into Weblate, just set
HOME=$DATA_DIR/home
when invoking gpg.
См.также
Ограничение частоты запросов¶
Изменено в версии 3.2: Модуль «Ограничение частоты запросов» теперь допускает более тонкую настройку.
Изменено в версии 4.6: The rate limiting no longer applies to superusers.
Некоторые операции Weblate ограничены по частоте. Допустимо не более RATELIMIT_ATTEMPTS
попыток за период RATELIMIT_WINDOW
секунд. Если это количество превышено, то пользователь блокируется на RATELIMIT_LOCKOUT
секунд. Существуют также параметры, задающие ограничения, специфические для конкретных действий, например RATELIMIT_CONTACT_ATTEMPTS
или RATELIMIT_TRANSLATE_ATTEMPTS
. Следующая таблица является исчерпывающим списком таких параметров.
Следующие операции подвержены ограничению частоты запросов:
Имя |
Область |
Допустимо попыток |
Временное окно |
Период блокировки |
---|---|---|---|---|
Регистрация |
|
5 |
300 |
600 |
Отправка сообщения администраторам |
|
5 |
300 |
600 |
Аутентификация по паролю при входе |
|
5 |
300 |
600 |
Поиск по всему сайту |
|
6 |
60 |
60 |
Перевод |
|
30 |
60 |
600 |
Добавление в глоссарий |
|
30 |
60 |
600 |
Начало перевода на новый язык |
|
2 |
300 |
600 |
Если у пользователя не получается залогинится с AUTH_LOCK_ATTEMPTS
попыток, то аутентификация по паролю полностью отключается до тех пор пока пользователь не сбросит свой пароль.
The settings can be also applied in the Docker container by adding WEBLATE_
prefix to the setting name, for example RATELIMIT_ATTEMPTS
becomes WEBLATE_RATELIMIT_ATTEMPTS
.
Для API есть отдельные настройки ограничения колличества запросов, см. Ограничение частоты запросов API.
Fedora Messaging integration¶
Fedora Messaging is AMQP-based publisher for all changes happening in Weblate. You can hook additional services on changes happening in Weblate using this.
The Fedora Messaging integration is available as a separate Python module
weblate-fedora-messaging
. Please see
<https://github.com/WeblateOrg/fedora_messaging/> for setup instructions.