Módulos opcionais do Weblate#
Vários módulos opcionais estão disponíveis para sua configuração.
Exportador git#
Fornece acesso somente leitura ao repositório Git subjacente usando HTTP(S).
Instalação#
Adicione
weblate.gitexport
aos aplicativos instalados emsettings.py
:
INSTALLED_APPS += ("weblate.gitexport",)
Exporte repositórios existentes migrando seu banco de dados após a instalação:
weblate migrate
Uso#
O módulo conecta-se automaticamente ao Weblate e define a URL do repositório exportado na Configuração de componente. Os repositórios são acessíveis na parte /git/
da URL do Weblate, por exemplo, https://example.org/git/weblate/main/
.
Repositórios para projetos disponíveis publicamente podem ser clonados sem autenticação:
git clone 'https://example.org/git/weblate/main/'
O acesso para navegar nos repositórios com acesso restrito (com controle de acesso Privado ou quando REQUIRE_LOGIN
está habilitado) requer um token de API que pode ser obtido em seu perfil de usuário:
git clone 'https://user:KEY@example.org/git/weblate/main/'
Dica
Por padrão, os membros ou o grupo Usuários e usuário anônimo têm acesso aos repositórios para projetos públicos via Acessar repositório e funções de Usuário avançado.
Cobrança#
Isso é usado no Hosted Weblate para definir planos de cobrança, rastrear faturas e limites de uso.
Instalação#
1. Add weblate.billing
to installed apps in
settings.py
:
INSTALLED_APPS += ("weblate.billing",)
Execute a migração do banco de dados para instalar opcionalmente estruturas de banco de dados adicionais para o módulo:
weblate migrate
Uso#
Após a instalação, você pode controlar a cobrança na interface de administração. Os usuários com cobrança habilitada obterão a nova aba Cobrança em seu Perfil do usuário.
O módulo de cobrança também permite que os administradores do projeto criem novos projetos e componentes sem serem superusuários (veja add-projects). Isso é possível quando as seguintes condições são atendidas:
A cobrança está em seus limites configurados (qualquer uso excessivo resulta no bloqueio da criação do projeto/componente) e pago (se seu preço for diferente de zero)
O usuário é administrador do projeto existente com cobrança ou o usuário é proprietário da cobrança (este último é necessário ao criar uma nova cobrança para que os usuários possam importar novos projetos).
Após a criação do projeto, o usuário pode escolher qual faturamento deve ser cobrado pelo projeto, caso tenha acesso a mais deles.
Legal#
Isso é usado em Weblate hospedado para fornecer documentos legais necessários. Ele vem fornecido com documentos em branco, e espera-se que você preencha os seguintes modelos nos documentos:
legal/documents/tos.html
Documento de termos de serviço
legal/documents/privacy.html
Documento de política de privacidade
legal/documents/summary.html
Visão geral breve dos termos de serviço e política de privacidade
Ao alterar os documentos dos termos de serviço, ajuste LEGAL_TOS_DATE
para que os usuários sejam forçados a concordar com os documentos atualizados.
Nota
Documentos legais para o serviço Hosted Weblate estão disponíveis neste repositório Git <https://github.com/WeblateOrg/wllegal/tree/main/wllegal/templates/legal/documents>.
Muito provavelmente, eles não serão úteis diretamente para você, mas podem ser úteis como um ponto de partida se ajustados para atender às suas necessidades.
Instalação#
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",
]
Execute a migração do banco de dados para instalar opcionalmente estruturas de banco de dados adicionais para o módulo:
weblate migrate
Edite os documentos jurídicos na pasta
weblate/legal/templates/legal/
para corresponder ao seu serviço.
Uso#
Após a instalação e edição, os documentos legais são exibidos na interface de usuário do Weblate.
Avatares#
Os avatares são baixados e armazenados em cache no lado do servidor para reduzir o vazamento de informações para os sites que os servem por padrão. O suporte embutido para buscar avatares de endereços de e-mail configurados para isso pode ser desligado usando ENABLE_AVATARS
.
Atualmente, o Weblate oferece suporte a:
Ver também
Proteção contra spam#
Você pode se proteger contra spam por usuários usando o serviço Akismet.
Instale o módulo Python akismet (ele já está incluído na imagem Docker oficial).
Obtenha a chave de API do Akismet.
Armazene-a como
AKISMET_API_KEY
ouWEBLATE_AKISMET_API_KEY
no Docker.
O seguinte conteúdo é enviado ao Akismet para verificação:
Sugestões de usuário não autenticados
Descrições e links de projetos e componentes
Nota
Este (entre outras coisas) depende do endereço IP do cliente, veja Executando por trás de um proxy reverso para configurá-lo apropriadamente.
Assinando commits do Git com GnuPG#
Novo na versão 3.1.
Todos os commits podem ser assinados pela chave GnuPG da instância Weblate.
1. Turn on WEBLATE_GPG_IDENTITY
. (Weblate will generate a GnuPG
key when needed and will use it to sign all translation commits.)
Este recurso precisa do GnuPG 2.1 ou mais recente instalado.
Você pode encontrar a chave em DATA_DIR
e a chave pública é mostrada na página “Sobre”:
![../_images/about-gpg.png](../_images/about-gpg.png)
2. Alternatively you can also import existing keys into Weblate, just set
HOME=$DATA_DIR/home
when invoking gpg.
Ver também
Limitação de taxa#
Alterado na versão 3.2: A limitação de taxa agora aceita uma configuração mais refinada.
Alterado na versão 4.6: A limitação de taxa não se aplica mais a superusuários.
Várias operações no Weblate são limitadas por taxas. No máximo RATELIMIT_ATTEMPTS
tentativas são permitidas dentro de RATELIMIT_WINDOW
segundos. O usuário é bloqueado por RATELIMIT_LOCKOUT
. Há também configurações específicas para escopos como, por exemplo, RATELIMIT_CONTACT_ATTEMPTS
ou RATELIMIT_TRANSLATE_ATTEMPTS
. A tabela abaixo é uma lista completa de escopos disponíveis.
As seguintes operações estão sujeitas a limitação de taxa:
Nome |
Escopo |
Tentativas permitidas |
Janela de limite de tempo |
Período de bloqueio |
---|---|---|---|---|
Registro |
|
5 |
300 |
600 |
Enviando mensagem para administradores |
|
2 |
300 |
600 |
Autenticação de senha ao entrar |
|
5 |
300 |
600 |
Pesquisa em todo o site |
|
6 |
60 |
60 |
Traduzindo |
|
30 |
60 |
600 |
Adicionando ao glossário |
|
30 |
60 |
600 |
Iniciando a tradução para um novo idioma |
|
2 |
300 |
600 |
Criando um novo projeto |
|
5 |
600 |
600 |
Se um usuário falhar ao fazer o login AUTH_LOCK_ATTEMPTS
vezes, a autenticação da senha será desativada na conta até ter passado pelo processo de redefinição da senha.
As configurações também podem ser aplicadas no contêiner do Docker adicionando o prefixo WEBLATE_
ao nome da configuração, por exemplo RATELIMIT_ATTEMPTS
torna-se WEBLATE_RATELIMIT_ATTEMPTS
.
A API possui configurações separadas de limitação de taxa, consulte Limitação de taxa da API.
Integração com Fedora Messaging#
Fedora Messaging é um editor baseado em AMQP para todas as mudanças que acontecem no Weblate. Você pode conectar serviços adicionais nas mudanças que acontecem no Weblate usando isso.
A integração com Fedora Messaging está disponível como um módulo Python separado weblate-fedora-messaging
. Consulte <https://github.com/WeblateOrg/fedora_messaging/> para obter instruções de configuração.