Optional Weblate modules¶
Several optional modules are available for your setup.
Git exporter¶
Добавлено в версии 2.10.
Provides you read-only access to the underlying Git repository using HTTP(S).
Установка¶
Add
weblate.gitexport
to installed apps insettings.py
:
INSTALLED_APPS += (
'weblate.gitexport',
)
Export existing repositories by migrating your database after installation:
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/master/
:
git clone 'https://example.org/git/weblate/master/'
Repositories are available anonymously unless По-проектный контроль доступа is turned on. This requires authenticate using your API token (it can be obtained in your Профиль пользователя):
git clone 'https://user:KEY@example.org/git/weblate/master/'
Биллинг¶
Добавлено в версии 2.4.
This is used on Hosted Weblate to define billing plans, track invoices and usage limits.
Установка¶
1. Add weblate.billing
to installed apps in
settings.py
:
INSTALLED_APPS += (
'weblate.billing',
)
Run the database migration to optionally install additional database structures for the module:
weblate migrate
Использование¶
After installation you can control billing in the admin interface. Users with billing enabled will get new Billing tab in their Профиль пользователя.
The billing module additionally allows project admins to create new projects and components without being superusers (see Adding translation projects and components). This is possible when following conditions are met:
The billing is in its configured limits (any overusage results in blocking of project/component creation) and paid (if its price is non zero)
The user is admin of existing project with billing or user is owner of billing (the latter is necessary when creating new billing for users to be able to import new projects).
Upon project creation user is able to choose which billing should be charged for the project in case he has access to more of them.
Право¶
Добавлено в версии 2.15.
This is used on Hosted Weblate to provide required legal documents. It comes provided with blank documents, and you are expected to fill out the following templates in the documents:
legal/documents/tos.html
Terms of service document
legal/documents/privacy.html
Privacy policy document
legal/documents/summary.html
Short overview of the terms of service and privacy policy
Примечание
Legal documents for the Hosted Weblate service is available in this Git repository <https://github.com/WeblateOrg/hosted/tree/master/wlhosted/legal/templates/legal/documents>.
Most likely these will not be directly usable to you, but might come in handy as a starting point if adjusted to meet your needs.
Установка¶
1. Add weblate.legal
to installed apps in
settings.py
:
INSTALLED_APPS += (
'weblate.legal',
)
# Optional:
# Social auth pipeline to confirm TOS upon registration/subsequent login
SOCIAL_AUTH_PIPELINE += (
'weblate.legal.pipeline.tos_confirm',
)
# Middleware to enforce TOS confirmation of signed in users
MIDDLEWARE += [
'weblate.legal.middleware.RequireTOSMiddleware',
]
Run the database migration to optionally install additional database structures for the module:
weblate migrate
Edit the legal documents in the
weblate/legal/templates/legal/
folder to match your service.
Использование¶
After installation and editing, the legal documents are shown in the Weblate UI.
Аватары¶
Avatars are downloaded and cached server-side to reduce information leaks to the sites serving them
by default. The built-in support for fetching avatars from e-mails addresses configured for it can be
turned off using ENABLE_AVATARS
.
Weblate currently supports:
См.также
Spam protection¶
You can protect against suggestion spamming by unauthenticated users by using the akismet.com service.
Install the akismet Python module
Configure the Akismet API key.
Примечание
This (among other things) relies on IP address of the client, please see Работа за обратным прокси for properly configuring that.
См.также
Signing Git commits with GnuPG¶
Добавлено в версии 3.1.
All commits can be signed by the GnuPG key of the Weblate instance.
1. Turn on WEBLATE_GPG_IDENTITY
. (Weblate will generate a GnuPG
key when needed and will use it to sign all translation commits.)
This feature needs GnuPG 2.1 or newer installed.
You can find the key in the DATA_DIR
and the public key is shown on
the «About» page:
2. Alternatively you can also import existing keys into Weblate, just set
HOME=$DATA_DIR/home
when invoking gpg.
См.также
Ограничение частоты запросов¶
Изменено в версии 3.2: The rate limiting now accepts more fine-grained configuration.
Several operations in Weblate are rate limited. At most
RATELIMIT_ATTEMPTS
attempts are allowed within RATELIMIT_WINDOW
seconds.
The user is then blocked for RATELIMIT_LOCKOUT
. There are also settings specific to scopes, for example RATELIMIT_CONTACT_ATTEMPTS
or RATELIMIT_TRANSLATE_ATTEMPTS
. The table below is a full list of available scopes.
The following operations are subject to rate limiting:
Имя |
Область |
Allowed attempts |
Ratelimit window |
Lockout period |
---|---|---|---|---|
Регистрация |
|
5 |
300 |
600 |
Sending message to admins |
|
5 |
300 |
600 |
Password authentication on login |
|
5 |
300 |
600 |
Sitewide search |
|
6 |
60 |
60 |
Перевод |
|
30 |
60 |
600 |
Adding to glossary |
|
30 |
60 |
600 |
If a user fails to log in AUTH_LOCK_ATTEMPTS
times, password authentication will be turned off on the account until having gone through the process of having its password reset.