From 707188b89ad218ca27eab2f32897b63e666b6de3 Mon Sep 17 00:00:00 2001 From: Eduardo Silva Date: Mon, 14 Apr 2025 17:21:57 -0300 Subject: [PATCH] Peer list translation --- locale/pt_BR/LC_MESSAGES/django.mo | Bin 4040 -> 7839 bytes locale/pt_BR/LC_MESSAGES/django.po | 216 ++++++++++++++++++- templates/wireguard/wireguard_peer_list.html | 107 +++++---- wireguard_peer/views.py | 3 +- 4 files changed, 267 insertions(+), 59 deletions(-) diff --git a/locale/pt_BR/LC_MESSAGES/django.mo b/locale/pt_BR/LC_MESSAGES/django.mo index 39cf0ab1207ac25917d81d4a65a484802544f885..f3ad5a07b38661b8803c163a1f797476161cf758 100644 GIT binary patch literal 7839 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 delta 1131 zcmXxiPe>F|9Ki9nrnaW8wz=x+np0X**H8>m*|K0mYAK^SM7?&$bz+-|Sw+0Gfq4-_ zY6>*Sh)TLhhlLJZ!XoM*b?=WIf*|VFr9(vD-#Gr*_df5v*_rvh-@FI?@7jy&(ek^B z=%OWPBO#@_ajuMxxVS~BTGUvFPGAuu%;y7_u#fo)p1~hj#ALZr+i(@@aSg-x1uNt) z-x*Z1@Cy&&pWqLDT;->R=u&tLxuou(ym%3t@hQe}6?^a#R$`P+UKqy)+>f$>L6rZW zz!pi-Vo<}v4V27op=5jyx8f6A#ubzYj<6^@HL)Kb;$HlUGg!$(l2maHrE>49HWL1f zQRY8U68VR9NWdG$B2jGHy{ zFv|L6lmxC~J5FP9Cxb@}2JjWi3qqtVB?_aIcy}=G!(Gfzqk)qsrCmU&+zLvCo}(oA z7GK~8+<~)vH`(YC9>k9k>fgbjfqKkiFH$-GAcAU>j)>7Dky^@({|1@hP55bP3WAdj<~Ml8m^glbk?$SrR!A( zLOrRpk<4aY?o%ndFs|*4X^gmfbkxcyZr!+Z*vVP8@_R$)v}Jpf)kER5E)*smH|urO zoQyi|xJpl4%3GPu=Xu|1y1mZYes3Xi)9bB!Rw}QbDoZ3KMaMX9=5*Fk$^5wKYS&0* zE$52%_QevV^RaUwZ@sazGFZFT)Zwi)r7KRE_L%mToAcgGywO{Z4|>1jN4@*4FTJV6 K>ymC82>k~F`I@f) diff --git a/locale/pt_BR/LC_MESSAGES/django.po b/locale/pt_BR/LC_MESSAGES/django.po index 78fbeca..52c99e7 100644 --- a/locale/pt_BR/LC_MESSAGES/django.po +++ b/locale/pt_BR/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-04-14 16:18-0300\n" +"POT-Creation-Date: 2025-04-14 17:19-0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -69,7 +69,7 @@ msgstr "Estado" msgid "User Manager" msgstr "Configurar Usuários" -#: templates/base.html:176 +#: templates/base.html:176 templates/wireguard/wireguard_peer_list.html:195 msgid "VPN Invite" msgstr "Convite para VPN" @@ -101,6 +101,205 @@ msgstr "Atualização Disponível" msgid "Version" msgstr "Versão" +#: templates/wireguard/wireguard_peer_list.html:75 +#: templates/wireguard/wireguard_peer_list.html:125 +msgid "Throughput" +msgstr "Taxa de transferência" + +#: templates/wireguard/wireguard_peer_list.html:76 +#: templates/wireguard/wireguard_peer_list.html:126 +msgid "Transfer" +msgstr "Transferência" + +#: templates/wireguard/wireguard_peer_list.html:77 +#: templates/wireguard/wireguard_peer_list.html:127 +msgid "Latest Handshake" +msgstr "Último Handshake" + +#: templates/wireguard/wireguard_peer_list.html:79 +#: templates/wireguard/wireguard_peer_list.html:128 +msgid "Endpoints" +msgstr "Endereço Remoto" + +#: templates/wireguard/wireguard_peer_list.html:81 +#: templates/wireguard/wireguard_peer_list.html:129 +msgid "Allowed IPs" +msgstr "IPs Permitidos" + +#: templates/wireguard/wireguard_peer_list.html:102 +msgid "Are you sure you want to create a new peer?" +msgstr "Você tem certeza que deseja criar um novo peer?" + +#: templates/wireguard/wireguard_peer_list.html:102 +#: templates/wireguard/wireguard_peer_list.html:104 +msgid "Create Peer" +msgstr "Criar Peer" + +#: templates/wireguard/wireguard_peer_list.html:106 +#: templates/wireguard/wireguard_peer_list.html:617 +msgid "Show extras" +msgstr "Exibir extras" + +#: templates/wireguard/wireguard_peer_list.html:136 +msgid "Peer Traffic" +msgstr "Tráfego do Peer" + +#: templates/wireguard/wireguard_peer_list.html:151 +msgid "No traffic history, please wait a few minutes" +msgstr "Sem histórico de tráfego, por favor aguarde alguns minutos" + +#: templates/wireguard/wireguard_peer_list.html:158 +msgid "Close QR Code" +msgstr "Fechar QR Code" + +#: templates/wireguard/wireguard_peer_list.html:166 +msgid "Back" +msgstr "Voltar" + +#: templates/wireguard/wireguard_peer_list.html:168 +msgid "VPN Invite Details" +msgstr "Detalhes do Convite para VPN" + +#: templates/wireguard/wireguard_peer_list.html:178 +msgid "Enter Email or WhatsApp Number" +msgstr "Digite o Email ou Número do WhatsApp" + +#: templates/wireguard/wireguard_peer_list.html:179 +msgid "Email or phone number" +msgstr "Email ou número de telefone" + +#: templates/wireguard/wireguard_peer_list.html:182 +msgid "Copy Text" +msgstr "Copiar Texto" + +#: templates/wireguard/wireguard_peer_list.html:183 +msgid "Email" +msgstr "Email" + +#: templates/wireguard/wireguard_peer_list.html:184 +msgid "WhatsApp" +msgstr "WhatsApp" + +#: templates/wireguard/wireguard_peer_list.html:185 +msgid "Delete" +msgstr "Excluir" + +#: templates/wireguard/wireguard_peer_list.html:192 +msgid "Close" +msgstr "Fechar" + +#: templates/wireguard/wireguard_peer_list.html:193 +msgid "Config" +msgstr "Configuração" + +#: templates/wireguard/wireguard_peer_list.html:194 +msgid "QR Code" +msgstr "Código QR" + +#: templates/wireguard/wireguard_peer_list.html:196 +msgid "Edit" +msgstr "Editar" + +#: templates/wireguard/wireguard_peer_list.html:204 +msgid "No WireGuard Instances Found" +msgstr "Nenhuma Instância do WireGuard Encontrada" + +#: templates/wireguard/wireguard_peer_list.html:205 +msgid "" +"There are no WireGuard instances configured. You can add a new instance by " +"clicking the button below." +msgstr "" +"Não há instâncias do WireGuard configuradas. Você pode adicionar uma nova " +"instância clicando no botão abaixo." + +#: templates/wireguard/wireguard_peer_list.html:208 +msgid "Add WireGuard Instance" +msgstr "Adicionar Instância do WireGuard" + +#: templates/wireguard/wireguard_peer_list.html:570 +msgid "" +"This address does not appear in the wg show command output, likely " +"indicating that another peer has an IP overlapping this network or that the " +"configuration file is outdated." +msgstr "" +"Este endereço não aparece na saída do comando wg show, provavelmente " +"indicando que outro peer tem um IP sobrepondo esta rede ou que o arquivo de " +"configuração está desatualizado." + +#: templates/wireguard/wireguard_peer_list.html:585 +msgid "" +"At least one address does not appear in the wg show command output, which " +"may indicate that another peer is using an overlapping IP or that the " +"configuration file is outdated." +msgstr "" +"Ao menos um endereço não aparece na saída do comando wg show, o que pode " +"indicar que outro peer está usando um IP sobreposto ou que o arquivo de " +"configuração está desatualizado." + +#: templates/wireguard/wireguard_peer_list.html:614 +msgid "Hide extras" +msgstr "Ocultar extras" + +#: templates/wireguard/wireguard_peer_list.html:658 +#: templates/wireguard/wireguard_peer_list.html:792 +msgid "Access Password" +msgstr "Senha de Acesso" + +#: templates/wireguard/wireguard_peer_list.html:658 +#: templates/wireguard/wireguard_peer_list.html:792 +msgid "(Share this password via a separate secure channel)" +msgstr "(Compartilhe esta senha por um canal seguro separado)" + +#: templates/wireguard/wireguard_peer_list.html:661 +msgid "Unknown error" +msgstr "Erro desconhecido" + +#: templates/wireguard/wireguard_peer_list.html:665 +msgid "Error creating invite." +msgstr "Erro ao criar convite." + +#: templates/wireguard/wireguard_peer_list.html:702 +msgid "Invite text copied to clipboard." +msgstr "Texto do convite copiado para a área de transferência." + +#: templates/wireguard/wireguard_peer_list.html:704 +msgid "Failed to copy text." +msgstr "Falha ao copiar o texto." + +#: templates/wireguard/wireguard_peer_list.html:707 +msgid "Clipboard API not supported." +msgstr "A API de área de transferência não é suportada." + +#: templates/wireguard/wireguard_peer_list.html:716 +msgid "Please enter a valid phone number for WhatsApp." +msgstr "Por favor, insira um número de telefone válido para o WhatsApp." + +#: templates/wireguard/wireguard_peer_list.html:728 +#: templates/wireguard/wireguard_peer_list.html:774 +msgid "Invite data is not available." +msgstr "Dados do convite não estão disponíveis." + +#: templates/wireguard/wireguard_peer_list.html:737 +msgid "Please enter a valid email address." +msgstr "Por favor, insira um endereço de email válido." + +#: templates/wireguard/wireguard_peer_list.html:759 +msgid "Error sending email." +msgstr "Erro ao enviar o email." + +#: templates/wireguard/wireguard_peer_list.html:796 +#: templates/wireguard/wireguard_peer_list.html:800 +msgid "Error refreshing invite." +msgstr "Erro ao atualizar o convite." + +#: templates/wireguard/wireguard_peer_list.html:815 +msgid "No invite data available to refresh." +msgstr "Não há dados de convite disponíveis para atualizar." + +#: templates/wireguard/wireguard_peer_list.html:835 +msgid "Error closing invite:" +msgstr "Erro ao fechar o convite:" + #: templates/wireguard/wireguard_status.html:9 msgid "Update Configuration" msgstr "Atualizar Configuração" @@ -137,6 +336,10 @@ msgstr "Peers" msgid "WireGuard Status" msgstr "Estado do WireGuard" +#: wireguard_peer/views.py:49 +msgid "WireGuard Peer List" +msgstr "Lista de Peers do WireGuard" + #: wireguard_tools/views.py:160 msgid "" "Export successful!|WireGuard configuration files have been exported to /etc/" @@ -170,7 +373,10 @@ msgid "" "WARNING|Please note that the interface was reloaded, not restarted. Double-" "check if the the peers are working as expected. If you find any issues, " "please report them." -msgstr "Aviso|Por favor, note que a interface foi recarregada, sem ser reiniciada. Verifique se os peers estão funcionando como esperado. Se você encontrar algum problema, por favor, relate-o." +msgstr "" +"Aviso|Por favor, note que a interface foi recarregada, sem ser reiniciada. " +"Verifique se os peers estão funcionando como esperado. Se você encontrar " +"algum problema, por favor, relate-o." #: wireguard_tools/views.py:280 msgid "WireGuard reloaded|The WireGuard service has been reloaded." @@ -186,4 +392,6 @@ msgstr "Erros encontrados|Erro ao processar uma ou mais interfaces." #: wireguard_tools/views.py:288 msgid "No interfaces found|No WireGuard interfaces were found to process." -msgstr "Nenhuma interface encontrada|Nenhuma interface WireGuard foi encontrada para processar." +msgstr "" +"Nenhuma interface encontrada|Nenhuma interface WireGuard foi encontrada para " +"processar." diff --git a/templates/wireguard/wireguard_peer_list.html b/templates/wireguard/wireguard_peer_list.html index 3702e2d..4ce9b68 100644 --- a/templates/wireguard/wireguard_peer_list.html +++ b/templates/wireguard/wireguard_peer_list.html @@ -1,5 +1,5 @@ {% extends "base.html" %} - +{% load i18n %} {% block page_custom_head %}