Додаткові модулі Weblate¶
Для вашої конфігурації доступні декілька додаткових модулів.
Засіб експортування Git¶
Надає вам доступ лише до читання підлеглого сховища Git за допомогою HTTP(S).
Установлення¶
Додайте
weblate.gitexport
до запису встановлених програм уsettings.py
:INSTALLED_APPS += ("weblate.gitexport",)
Експортування наявних сховищ перенесенням вашої бази даних після встановлення:
weblate migrate
Підказка
Експортер Git’а увімкнено у нашому офіційному образі Docker. Щоб увімкнути його, скористайтеся:
WEBLATE_REMOVE_APPS=weblate.gitexport
Користування¶
Модуль автоматично обробляє дані Weblate і встановлює адресу експортованого сховища у складнику. Доступ до сховищ можна отримати за частиною /git/
адреси Weblate, наприклад https://example.org/git/weblate/main/
.
Сховища для загальнодоступних проєктів можна клонувати без розпізнавання:
git clone 'https://example.org/git/weblate/main/'
Доступ до навігації сховищами із обмеженнями доступу (з керуванням доступом Private або вмикання REQUIRE_LOGIN
) потребує жетона програмного інтерфейсу, який можна отримати у вашому профілі користувача:
git clone 'https://user:KEY@example.org/git/weblate/main/'
Підказка
Типово учасники або групи Користувач та анонімний користувач мають доступ до сховищ для загальнодоступних проєктів за допомогою ролей Доступ до сховища та Досвідчений користувач.
Оплата¶
Це використовується на Hosted Weblate для визначення тарифних планів, створення рахунків та встановлення обмежень у користуванні.
Установлення¶
1. Add weblate.billing
to installed apps in
settings.py
:
INSTALLED_APPS += ("weblate.billing",)
Запустіть перенесення бази даних, щоб додатково встановити структури бази даних для модуля:
weblate migrate
Створення та призначення тарифного плану¶
Щоб активувати білінг, спочатку потрібно створити тарифний план. Перейдіть до розділу Адміністрування (представлений іконкою гайкового ключа) і відкрийте екран Інструменти. Звідти перейдіть до інтерфейсу адміністратора Django.
В інтерфейсі адміністратора Django знайдіть розділ BILLING і додайте тарифний план. Наприклад, ви можете додати тарифний план Free без вартості.
Якщо ви хочете призначити план виставлення рахунків для існуючого проекту, це також можна зробити в інтерфейсі адміністратора Django за допомогою опції Виставлення рахунків клієнтам.
Нарешті, в інтерфейсі адміністратора Django передбачена опція Рахунок для реєстрації платежів ваших клієнтів.
Користування¶
Після встановлення ви можете керувати рахунками за допомогою адміністративного інтерфейсу. Користувачі із увімкненим обліком побачать нову вкладку, Оплата, у їхньому профілі користувача.
Крім того, модуль обліку надає змогу адміністраторам проєкту створювати проєкти і складники без отримання прав надкористувача (див. Додавання проєктів і складників перекладу). Це можливо при задоволенні таких умов:
Рахунок перебуває у налаштованих межах (будь-яке перевищення обмежень призведе до блокування створення проєктів і складників) із сплачено (якщо тарифний план не є нульовим)
Користувач є адміністратором наявного проєкту із обліком або користувач є власником рахунка (останнє є необхідним при створенні нового рахунку для користувачів, щоб мати змогу імпортувати нові проєкти).
Під час створення проєкту користувач може вибрати, до якого рахунка слід включати проєкт, якщо користувач має доступ до декількох з них.
Правові відомості¶
Це використовується на Hosted Weblate для надання обов’язкових юридичних документів. Типово використовуються порожні документи. Ви маєте заповнити такі шаблони у документах:
legal/documents/tos.html
Документ щодо умов надання послуг
legal/documents/privacy.html
Документ щодо правил конфіденційності
legal/documents/summary.html
Короткий огляд умов надання послуг та правил конфіденційності
При змін документів щодо умов обслуговування, будь ласка, скоригуйте LEGAL_TOS_DATE
, щоб користувачам було запропоновано погодитися із оновленими документами.
Примітка
Юридичні документи для служби Hosted Weblate доступні у цьому сховищі Git: <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 передбачено підтримку таких служб:
Дивись також
Захист від спаму¶
Ви можете захистити систему від спаму користувачів за допомогою служби Akismet.
Установіть модуль Python akismet (його вже включено в офіційний образ Docker).
Отримайте ключ до програмного інтерфейсу Akismet.
Зберігайте його як
AKISMET_API_KEY
абоWEBLATE_AKISMET_API_KEY
у Docker.
Цей вміст надіслано на перевірку Akismet:
Пропозиції користувачів, які не пройшли розпізнавання
Описи та посилання проєктів і складників
Примітка
Це (окрім інших речей) залежить від даних IP-адреси клієнта. Будь ласка, див. Робота за реверсивним проксі-сервером, щоб дізнатися більше про належне налаштовування.
Підписування внесків Git за допомогою GnuPG¶
Усі внески можна підписувати за допомогою ключа GnuPG екземпляра Weblate.
Увімкніть
WEBLATE_GPG_IDENTITY
. (Weblate за потреби згенерує ключ GnuPG і використовуватиме його для підпису всіх комітів перекладу.)Для користування цією можливістю слід встановити GnuPG 2.1 або новішу версію.
Ключ зберігається у каталозі
DATA_DIR
, а відкритий ключ буде показано на сторінці «Про Weblate»:Крім того, ви також можете імпортувати існуючі ключі в Weblate, просто встановіть
HOME=$DATA_DIR/home
під час виклику gpg.
Підказка
Дані ключів зберігаються у кеші Weblate протягом довгого часу. Якщо ви надасте Weblate змогу створити ключ з WEBLATE_GPG_IDENTITY
, а потім імпортуєте ключ для того самого профілю для використання його як наявного ключа, рекомендуємо очистити кеш redis, щоб зміни набули чинності.
Примітка
При спільному використанні DATA_DIR
на декількох хостах, будь ласка, дотримуйтесь інструкцій на https://wiki.gnupg.org/NFS, щоб забезпечити надійну роботу підпису GnuPG.
Дивись також
Обмеження частоти¶
Змінено в версії 4.6: Обмеження швидкості більше не поширюється на авторизованих суперкористувачів.
Частоту деяких дій у Weblate можна обмежити. Дозволено виконувати RATELIMIT_ATTEMPTS
спроб дії протягом RATELIMIT_WINDOW
секунд. При перевищенні обмеження користувача буде заблоковано на значення RATELIMIT_LOCKOUT
. Також передбачено специфічні параметри для областей, наприклад RATELIMIT_CONTACT_ATTEMPTS
або RATELIMIT_TRANSLATE_ATTEMPTS
. У розташованій нижче таблиці наведено повний список доступних областей.
Обмеженню частоти підлягають такі дії:
Назва |
Область |
Дозволені спроби |
Вікно обмеження частоти |
Період блокування |
---|---|---|---|---|
Реєстрація |
|
5 |
300 |
600 |
Надсилання повідомлення адміністраторам |
|
2 |
300 |
600 |
Розпізнавання за паролем при вході |
|
5 |
300 |
600 |
Загальний пошук за сайтом |
|
6 |
60 |
60 |
Переклад |
|
30 |
60 |
600 |
Додавання до глосарія |
|
30 |
60 |
600 |
Започаткування перекладу новою мовою |
|
2 |
300 |
600 |
Створення нового проєкту |
|
5 |
600 |
600 |
Обмеження швидкості базується на сеансах, коли користувач увійшов у систему, і на IP-адресі, якщо ні.
Якщо користувач не зможе увійти до системи AUTH_LOCK_ATTEMPTS
разів, на обліковому записі буде вимкнено розпізнавання за паролем, аж доки не буде виконано процедуру скидання пароля облікового запису.
Крім того, параметри може бути застосовано у контейнері Docker додаванням префікса WEBLATE_
до назви параметра. Приклад: RATELIMIT_ATTEMPTS
слід замінити на WEBLATE_RATELIMIT_ATTEMPTS
.
У програмному інтерфейсі є окремі параметри обмеження частоти, див. Обмеження частоти у програмному інтерфейсі.
Інтеграція Fedora Messaging¶
Fedora Messaging — заснований на AMQP засіб публікації усіх змін, які відбуваються у Weblate. За її допомогою ви можете будувати додаткові служби на основі змін, які відбуваються у Weblate.
Інтеграція з Fedora Messaging відбувається за допомогою окремого модуля Python, weblate-fedora-messaging
. Настанови з налаштовування можна знайти тут: <https://github.com/WeblateOrg/fedora_messaging/>.
Дивись також