Add handling for peers without private keys and update translations

This commit is contained in:
Eduardo Silva 2025-08-12 11:44:34 -03:00
parent 1f87e0bf25
commit d6843db9fb
13 changed files with 194 additions and 118 deletions

View File

@ -129,6 +129,7 @@ def peer_info(request):
'name': str(peer),
'public_key': str(peer.public_key),
'uuid': str(peer.uuid),
'private_key_exists': bool(peer.private_key),
}
return JsonResponse(data)

Binary file not shown.

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-08-12 10:36-0300\n"
"POT-Creation-Date: 2025-08-12 11:30-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -1208,7 +1208,7 @@ msgid "Create Peer"
msgstr "Peer erstellen"
#: templates/wireguard/wireguard_peer_list.html:106
#: templates/wireguard/wireguard_peer_list.html:617
#: templates/wireguard/wireguard_peer_list.html:637
msgid "Show extras"
msgstr "Extras anzeigen"
@ -1272,7 +1272,15 @@ msgstr ""
msgid "Add WireGuard Instance"
msgstr "WireGuardInstanz hinzufügen"
#: templates/wireguard/wireguard_peer_list.html:570
#: templates/wireguard/wireguard_peer_list.html:304
msgid ""
"This configuration does not contain a private key. You must add the private "
"key manually in your client before using it."
msgstr ""
"Diese Konfiguration enthält keinen privaten Schlüssel. Sie müssen den "
"privaten Schlüssel manuell in Ihrem Client hinzufügen, bevor Sie ihn verwenden."
#: templates/wireguard/wireguard_peer_list.html:590
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 "
@ -1282,7 +1290,7 @@ msgstr ""
"verwendet ein anderer Peer eine überlappende IP oder die Konfigurationsdatei "
"ist veraltet."
#: templates/wireguard/wireguard_peer_list.html:585
#: templates/wireguard/wireguard_peer_list.html:605
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 "
@ -1292,67 +1300,67 @@ msgstr ""
"Möglicherweise nutzt ein anderer Peer eine überlappende IP oder die "
"Konfiguration ist veraltet."
#: templates/wireguard/wireguard_peer_list.html:614
#: templates/wireguard/wireguard_peer_list.html:634
msgid "Hide extras"
msgstr "Extras ausblenden"
#: templates/wireguard/wireguard_peer_list.html:658
#: templates/wireguard/wireguard_peer_list.html:792
#: templates/wireguard/wireguard_peer_list.html:678
#: templates/wireguard/wireguard_peer_list.html:812
msgid "Access Password"
msgstr "Zugangspasswort"
#: templates/wireguard/wireguard_peer_list.html:658
#: templates/wireguard/wireguard_peer_list.html:792
#: templates/wireguard/wireguard_peer_list.html:678
#: templates/wireguard/wireguard_peer_list.html:812
msgid "(Share this password via a separate secure channel)"
msgstr "(Teilen Sie dieses Passwort über einen getrennten sicheren Kanal)"
#: templates/wireguard/wireguard_peer_list.html:661
#: templates/wireguard/wireguard_peer_list.html:681
msgid "Unknown error"
msgstr "Unbekannter Fehler"
#: templates/wireguard/wireguard_peer_list.html:665
#: templates/wireguard/wireguard_peer_list.html:685
msgid "Error creating invite."
msgstr "Fehler beim Erstellen der Einladung."
#: templates/wireguard/wireguard_peer_list.html:702
#: templates/wireguard/wireguard_peer_list.html:722
msgid "Invite text copied to clipboard."
msgstr "Einladungstext in die Zwischenablage kopiert."
#: templates/wireguard/wireguard_peer_list.html:704
#: templates/wireguard/wireguard_peer_list.html:724
msgid "Failed to copy text."
msgstr "Text konnte nicht kopiert werden."
#: templates/wireguard/wireguard_peer_list.html:707
#: templates/wireguard/wireguard_peer_list.html:727
msgid "Clipboard API not supported."
msgstr "ClipboardAPI wird nicht unterstützt."
#: templates/wireguard/wireguard_peer_list.html:716
#: templates/wireguard/wireguard_peer_list.html:736
msgid "Please enter a valid phone number for WhatsApp."
msgstr "Bitte geben Sie eine gültige Telefonnummer für WhatsApp ein."
#: templates/wireguard/wireguard_peer_list.html:728
#: templates/wireguard/wireguard_peer_list.html:774
#: templates/wireguard/wireguard_peer_list.html:748
#: templates/wireguard/wireguard_peer_list.html:794
msgid "Invite data is not available."
msgstr "Einladungsdaten sind nicht verfügbar."
#: templates/wireguard/wireguard_peer_list.html:737
#: templates/wireguard/wireguard_peer_list.html:757
msgid "Please enter a valid email address."
msgstr "Bitte geben Sie eine gültige EMailAdresse ein."
#: templates/wireguard/wireguard_peer_list.html:759
#: templates/wireguard/wireguard_peer_list.html:779
msgid "Error sending email."
msgstr "Fehler beim Senden der EMail."
#: templates/wireguard/wireguard_peer_list.html:796
#: templates/wireguard/wireguard_peer_list.html:800
#: templates/wireguard/wireguard_peer_list.html:816
#: templates/wireguard/wireguard_peer_list.html:820
msgid "Error refreshing invite."
msgstr "Fehler beim Aktualisieren der Einladung."
#: templates/wireguard/wireguard_peer_list.html:815
#: templates/wireguard/wireguard_peer_list.html:835
msgid "No invite data available to refresh."
msgstr "Keine Einladungsdaten zum Aktualisieren verfügbar."
#: templates/wireguard/wireguard_peer_list.html:835
#: templates/wireguard/wireguard_peer_list.html:855
msgid "Error closing invite:"
msgstr "Fehler beim Schließen der Einladung:"

Binary file not shown.

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-08-12 10:36-0300\n"
"POT-Creation-Date: 2025-08-12 11:30-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -1200,7 +1200,7 @@ msgid "Create Peer"
msgstr "Crear peer"
#: templates/wireguard/wireguard_peer_list.html:106
#: templates/wireguard/wireguard_peer_list.html:617
#: templates/wireguard/wireguard_peer_list.html:637
msgid "Show extras"
msgstr "Mostrar extras"
@ -1264,7 +1264,15 @@ msgstr ""
msgid "Add WireGuard Instance"
msgstr "Añadir instancia WireGuard"
#: templates/wireguard/wireguard_peer_list.html:570
#: templates/wireguard/wireguard_peer_list.html:304
msgid ""
"This configuration does not contain a private key. You must add the private "
"key manually in your client before using it."
msgstr ""
"Esta configuración no contiene una clave privada. Debes agregar la clave "
"privada manualmente en tu cliente antes de usarla."
#: templates/wireguard/wireguard_peer_list.html:590
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 "
@ -1273,7 +1281,7 @@ msgstr ""
"Esta dirección no aparece en la salida de 'wg show', lo que indica que otro "
"peer tiene una IP solapada o el archivo de configuración está desactualizado."
#: templates/wireguard/wireguard_peer_list.html:585
#: templates/wireguard/wireguard_peer_list.html:605
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 "
@ -1282,67 +1290,67 @@ msgstr ""
"Al menos una dirección no aparece en la salida de 'wg show', lo cual puede "
"indicar un IP solapada o un archivo desactualizado."
#: templates/wireguard/wireguard_peer_list.html:614
#: templates/wireguard/wireguard_peer_list.html:634
msgid "Hide extras"
msgstr "Ocultar extras"
#: templates/wireguard/wireguard_peer_list.html:658
#: templates/wireguard/wireguard_peer_list.html:792
#: templates/wireguard/wireguard_peer_list.html:678
#: templates/wireguard/wireguard_peer_list.html:812
msgid "Access Password"
msgstr "Contraseña de acceso"
#: templates/wireguard/wireguard_peer_list.html:658
#: templates/wireguard/wireguard_peer_list.html:792
#: templates/wireguard/wireguard_peer_list.html:678
#: templates/wireguard/wireguard_peer_list.html:812
msgid "(Share this password via a separate secure channel)"
msgstr "(Comparte esta contraseña por un canal seguro separado)"
#: templates/wireguard/wireguard_peer_list.html:661
#: templates/wireguard/wireguard_peer_list.html:681
msgid "Unknown error"
msgstr "Error desconocido"
#: templates/wireguard/wireguard_peer_list.html:665
#: templates/wireguard/wireguard_peer_list.html:685
msgid "Error creating invite."
msgstr "Error al crear invitación."
#: templates/wireguard/wireguard_peer_list.html:702
#: templates/wireguard/wireguard_peer_list.html:722
msgid "Invite text copied to clipboard."
msgstr "Texto de invitación copiado al portapapeles."
#: templates/wireguard/wireguard_peer_list.html:704
#: templates/wireguard/wireguard_peer_list.html:724
msgid "Failed to copy text."
msgstr "Error al copiar texto."
#: templates/wireguard/wireguard_peer_list.html:707
#: templates/wireguard/wireguard_peer_list.html:727
msgid "Clipboard API not supported."
msgstr "API del portapapeles no soportada."
#: templates/wireguard/wireguard_peer_list.html:716
#: templates/wireguard/wireguard_peer_list.html:736
msgid "Please enter a valid phone number for WhatsApp."
msgstr "Ingresa un número de WhatsApp válido."
#: templates/wireguard/wireguard_peer_list.html:728
#: templates/wireguard/wireguard_peer_list.html:774
#: templates/wireguard/wireguard_peer_list.html:748
#: templates/wireguard/wireguard_peer_list.html:794
msgid "Invite data is not available."
msgstr "Datos de invitación no disponibles."
#: templates/wireguard/wireguard_peer_list.html:737
#: templates/wireguard/wireguard_peer_list.html:757
msgid "Please enter a valid email address."
msgstr "Ingresa un email válido."
#: templates/wireguard/wireguard_peer_list.html:759
#: templates/wireguard/wireguard_peer_list.html:779
msgid "Error sending email."
msgstr "Error al enviar email."
#: templates/wireguard/wireguard_peer_list.html:796
#: templates/wireguard/wireguard_peer_list.html:800
#: templates/wireguard/wireguard_peer_list.html:816
#: templates/wireguard/wireguard_peer_list.html:820
msgid "Error refreshing invite."
msgstr "Error al actualizar invitación."
#: templates/wireguard/wireguard_peer_list.html:815
#: templates/wireguard/wireguard_peer_list.html:835
msgid "No invite data available to refresh."
msgstr "No hay datos de invitación para actualizar."
#: templates/wireguard/wireguard_peer_list.html:835
#: templates/wireguard/wireguard_peer_list.html:855
msgid "Error closing invite:"
msgstr "Error al cerrar invitación:"

Binary file not shown.

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-08-12 10:36-0300\n"
"POT-Creation-Date: 2025-08-12 11:30-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -1204,7 +1204,7 @@ msgid "Create Peer"
msgstr "Créer un peer"
#: templates/wireguard/wireguard_peer_list.html:106
#: templates/wireguard/wireguard_peer_list.html:617
#: templates/wireguard/wireguard_peer_list.html:637
msgid "Show extras"
msgstr "Afficher les extras"
@ -1268,7 +1268,15 @@ msgstr ""
msgid "Add WireGuard Instance"
msgstr "Ajouter une instance WireGuard"
#: templates/wireguard/wireguard_peer_list.html:570
#: templates/wireguard/wireguard_peer_list.html:304
msgid ""
"This configuration does not contain a private key. You must add the private "
"key manually in your client before using it."
msgstr ""
"Cette configuration ne contient pas de clé privée. Vous devez ajouter la "
"clé privée manuellement dans votre client avant de l'utiliser."
#: templates/wireguard/wireguard_peer_list.html:590
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 "
@ -1278,7 +1286,7 @@ msgstr ""
"est probable quun autre peer utilise un IP chevauchant ce réseau ou que le "
"fichier de configuration soit obsolète."
#: templates/wireguard/wireguard_peer_list.html:585
#: templates/wireguard/wireguard_peer_list.html:605
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 "
@ -1288,67 +1296,67 @@ msgstr ""
"signifier quun autre peer utilise un IP chevauchant ou que la configuration "
"est obsolète."
#: templates/wireguard/wireguard_peer_list.html:614
#: templates/wireguard/wireguard_peer_list.html:634
msgid "Hide extras"
msgstr "Masquer les extras"
#: templates/wireguard/wireguard_peer_list.html:658
#: templates/wireguard/wireguard_peer_list.html:792
#: templates/wireguard/wireguard_peer_list.html:678
#: templates/wireguard/wireguard_peer_list.html:812
msgid "Access Password"
msgstr "Mot de passe daccès"
#: templates/wireguard/wireguard_peer_list.html:658
#: templates/wireguard/wireguard_peer_list.html:792
#: templates/wireguard/wireguard_peer_list.html:678
#: templates/wireguard/wireguard_peer_list.html:812
msgid "(Share this password via a separate secure channel)"
msgstr "(Partagez ce mot de passe via un canal sécurisé distinct)"
#: templates/wireguard/wireguard_peer_list.html:661
#: templates/wireguard/wireguard_peer_list.html:681
msgid "Unknown error"
msgstr "Erreur inconnue"
#: templates/wireguard/wireguard_peer_list.html:665
#: templates/wireguard/wireguard_peer_list.html:685
msgid "Error creating invite."
msgstr "Erreur lors de la création de linvitation."
#: templates/wireguard/wireguard_peer_list.html:702
#: templates/wireguard/wireguard_peer_list.html:722
msgid "Invite text copied to clipboard."
msgstr "Texte dinvitation copié dans le pressepapiers."
#: templates/wireguard/wireguard_peer_list.html:704
#: templates/wireguard/wireguard_peer_list.html:724
msgid "Failed to copy text."
msgstr "Échec de la copie du texte."
#: templates/wireguard/wireguard_peer_list.html:707
#: templates/wireguard/wireguard_peer_list.html:727
msgid "Clipboard API not supported."
msgstr "API Clipboard non prise en charge."
#: templates/wireguard/wireguard_peer_list.html:716
#: templates/wireguard/wireguard_peer_list.html:736
msgid "Please enter a valid phone number for WhatsApp."
msgstr "Veuillez saisir un numéro de téléphone WhatsApp valide."
#: templates/wireguard/wireguard_peer_list.html:728
#: templates/wireguard/wireguard_peer_list.html:774
#: templates/wireguard/wireguard_peer_list.html:748
#: templates/wireguard/wireguard_peer_list.html:794
msgid "Invite data is not available."
msgstr "Les données dinvitation ne sont pas disponibles."
#: templates/wireguard/wireguard_peer_list.html:737
#: templates/wireguard/wireguard_peer_list.html:757
msgid "Please enter a valid email address."
msgstr "Veuillez saisir une adresse email valide."
#: templates/wireguard/wireguard_peer_list.html:759
#: templates/wireguard/wireguard_peer_list.html:779
msgid "Error sending email."
msgstr "Erreur lors de lenvoi de lemail."
#: templates/wireguard/wireguard_peer_list.html:796
#: templates/wireguard/wireguard_peer_list.html:800
#: templates/wireguard/wireguard_peer_list.html:816
#: templates/wireguard/wireguard_peer_list.html:820
msgid "Error refreshing invite."
msgstr "Erreur lors de lactualisation de linvitation."
#: templates/wireguard/wireguard_peer_list.html:815
#: templates/wireguard/wireguard_peer_list.html:835
msgid "No invite data available to refresh."
msgstr "Aucune donnée dinvitation à actualiser."
#: templates/wireguard/wireguard_peer_list.html:835
#: templates/wireguard/wireguard_peer_list.html:855
msgid "Error closing invite:"
msgstr "Erreur lors de la fermeture de linvitation:"

Binary file not shown.

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-08-12 10:36-0300\n"
"POT-Creation-Date: 2025-08-12 11:30-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -1210,7 +1210,7 @@ msgid "Create Peer"
msgstr "Criar Peer"
#: templates/wireguard/wireguard_peer_list.html:106
#: templates/wireguard/wireguard_peer_list.html:617
#: templates/wireguard/wireguard_peer_list.html:637
msgid "Show extras"
msgstr "Exibir extras"
@ -1274,7 +1274,15 @@ msgstr ""
msgid "Add WireGuard Instance"
msgstr "Adicionar Instância do WireGuard"
#: templates/wireguard/wireguard_peer_list.html:570
#: templates/wireguard/wireguard_peer_list.html:304
msgid ""
"This configuration does not contain a private key. You must add the private "
"key manually in your client before using it."
msgstr ""
"Esta configuração não contém uma chave privada. Você deve adicionar a chave "
"privada manualmente no seu cliente antes de usá-la."
#: templates/wireguard/wireguard_peer_list.html:590
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 "
@ -1284,7 +1292,7 @@ msgstr ""
"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
#: templates/wireguard/wireguard_peer_list.html:605
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 "
@ -1294,67 +1302,67 @@ msgstr ""
"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
#: templates/wireguard/wireguard_peer_list.html:634
msgid "Hide extras"
msgstr "Ocultar extras"
#: templates/wireguard/wireguard_peer_list.html:658
#: templates/wireguard/wireguard_peer_list.html:792
#: templates/wireguard/wireguard_peer_list.html:678
#: templates/wireguard/wireguard_peer_list.html:812
msgid "Access Password"
msgstr "Senha de Acesso"
#: templates/wireguard/wireguard_peer_list.html:658
#: templates/wireguard/wireguard_peer_list.html:792
#: templates/wireguard/wireguard_peer_list.html:678
#: templates/wireguard/wireguard_peer_list.html:812
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
#: templates/wireguard/wireguard_peer_list.html:681
msgid "Unknown error"
msgstr "Erro desconhecido"
#: templates/wireguard/wireguard_peer_list.html:665
#: templates/wireguard/wireguard_peer_list.html:685
msgid "Error creating invite."
msgstr "Erro ao criar convite."
#: templates/wireguard/wireguard_peer_list.html:702
#: templates/wireguard/wireguard_peer_list.html:722
msgid "Invite text copied to clipboard."
msgstr "Texto do convite copiado para a área de transferência."
#: templates/wireguard/wireguard_peer_list.html:704
#: templates/wireguard/wireguard_peer_list.html:724
msgid "Failed to copy text."
msgstr "Falha ao copiar o texto."
#: templates/wireguard/wireguard_peer_list.html:707
#: templates/wireguard/wireguard_peer_list.html:727
msgid "Clipboard API not supported."
msgstr "A API de área de transferência não é suportada."
#: templates/wireguard/wireguard_peer_list.html:716
#: templates/wireguard/wireguard_peer_list.html:736
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
#: templates/wireguard/wireguard_peer_list.html:748
#: templates/wireguard/wireguard_peer_list.html:794
msgid "Invite data is not available."
msgstr "Dados do convite não estão disponíveis."
#: templates/wireguard/wireguard_peer_list.html:737
#: templates/wireguard/wireguard_peer_list.html:757
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
#: templates/wireguard/wireguard_peer_list.html:779
msgid "Error sending email."
msgstr "Erro ao enviar o email."
#: templates/wireguard/wireguard_peer_list.html:796
#: templates/wireguard/wireguard_peer_list.html:800
#: templates/wireguard/wireguard_peer_list.html:816
#: templates/wireguard/wireguard_peer_list.html:820
msgid "Error refreshing invite."
msgstr "Erro ao atualizar o convite."
#: templates/wireguard/wireguard_peer_list.html:815
#: templates/wireguard/wireguard_peer_list.html:835
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
#: templates/wireguard/wireguard_peer_list.html:855
msgid "Error closing invite:"
msgstr "Erro ao fechar o convite:"

Binary file not shown.

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-08-12 10:36-0300\n"
"POT-Creation-Date: 2025-08-12 11:30-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -1204,7 +1204,7 @@ msgid "Create Peer"
msgstr "Vytvoriť peer"
#: templates/wireguard/wireguard_peer_list.html:106
#: templates/wireguard/wireguard_peer_list.html:617
#: templates/wireguard/wireguard_peer_list.html:637
msgid "Show extras"
msgstr "Zobraziť dodatky"
@ -1268,7 +1268,15 @@ msgstr ""
msgid "Add WireGuard Instance"
msgstr "Pridať WireGuard inštanciu"
#: templates/wireguard/wireguard_peer_list.html:570
#: templates/wireguard/wireguard_peer_list.html:304
msgid ""
"This configuration does not contain a private key. You must add the private "
"key manually in your client before using it."
msgstr ""
"Táto konfigurácia neobsahuje súkromný kľúč. Musíte pridať súkromný kľúč "
"manuálne vo vašom klientovi pred jeho použitím."
#: templates/wireguard/wireguard_peer_list.html:590
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 "
@ -1278,7 +1286,7 @@ msgstr ""
"naznačuje, že iný peer má IP prekrývajúcu túto sieť alebo že konfiguračný "
"súbor je zastaraný."
#: templates/wireguard/wireguard_peer_list.html:585
#: templates/wireguard/wireguard_peer_list.html:605
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 "
@ -1288,67 +1296,67 @@ msgstr ""
"naznačovať, že iný peer používa prekrývajúcu IP adresu alebo že konfiguračný "
"súbor je zastaraný."
#: templates/wireguard/wireguard_peer_list.html:614
#: templates/wireguard/wireguard_peer_list.html:634
msgid "Hide extras"
msgstr "Skryť dodatky"
#: templates/wireguard/wireguard_peer_list.html:658
#: templates/wireguard/wireguard_peer_list.html:792
#: templates/wireguard/wireguard_peer_list.html:678
#: templates/wireguard/wireguard_peer_list.html:812
msgid "Access Password"
msgstr "Prístupové heslo"
#: templates/wireguard/wireguard_peer_list.html:658
#: templates/wireguard/wireguard_peer_list.html:792
#: templates/wireguard/wireguard_peer_list.html:678
#: templates/wireguard/wireguard_peer_list.html:812
msgid "(Share this password via a separate secure channel)"
msgstr "(Zdieľajte toto heslo cez samostatný bezpečný kanál)"
#: templates/wireguard/wireguard_peer_list.html:661
#: templates/wireguard/wireguard_peer_list.html:681
msgid "Unknown error"
msgstr "Neznáma chyba"
#: templates/wireguard/wireguard_peer_list.html:665
#: templates/wireguard/wireguard_peer_list.html:685
msgid "Error creating invite."
msgstr "Chyba pri vytváraní pozvánky."
#: templates/wireguard/wireguard_peer_list.html:702
#: templates/wireguard/wireguard_peer_list.html:722
msgid "Invite text copied to clipboard."
msgstr "Text pozvánky bol skopírovaný do schránky."
#: templates/wireguard/wireguard_peer_list.html:704
#: templates/wireguard/wireguard_peer_list.html:724
msgid "Failed to copy text."
msgstr "Nepodarilo sa skopírovať text."
#: templates/wireguard/wireguard_peer_list.html:707
#: templates/wireguard/wireguard_peer_list.html:727
msgid "Clipboard API not supported."
msgstr "API schránky nie je podporované."
#: templates/wireguard/wireguard_peer_list.html:716
#: templates/wireguard/wireguard_peer_list.html:736
msgid "Please enter a valid phone number for WhatsApp."
msgstr "Prosím zadajte platné telefónne číslo pre WhatsApp."
#: templates/wireguard/wireguard_peer_list.html:728
#: templates/wireguard/wireguard_peer_list.html:774
#: templates/wireguard/wireguard_peer_list.html:748
#: templates/wireguard/wireguard_peer_list.html:794
msgid "Invite data is not available."
msgstr "Údaje pozvánky nie sú dostupné."
#: templates/wireguard/wireguard_peer_list.html:737
#: templates/wireguard/wireguard_peer_list.html:757
msgid "Please enter a valid email address."
msgstr "Prosím zadajte platnú e-mailovú adresu."
#: templates/wireguard/wireguard_peer_list.html:759
#: templates/wireguard/wireguard_peer_list.html:779
msgid "Error sending email."
msgstr "Chyba pri odosielaní e-mailu."
#: templates/wireguard/wireguard_peer_list.html:796
#: templates/wireguard/wireguard_peer_list.html:800
#: templates/wireguard/wireguard_peer_list.html:816
#: templates/wireguard/wireguard_peer_list.html:820
msgid "Error refreshing invite."
msgstr "Chyba pri obnovovaní pozvánky."
#: templates/wireguard/wireguard_peer_list.html:815
#: templates/wireguard/wireguard_peer_list.html:835
msgid "No invite data available to refresh."
msgstr "Žiadne údaje pozvánky na obnovenie."
#: templates/wireguard/wireguard_peer_list.html:835
#: templates/wireguard/wireguard_peer_list.html:855
msgid "Error closing invite:"
msgstr "Chyba pri zatváraní pozvánky:"

View File

@ -130,8 +130,8 @@
{% endif %}
</div>
<div class="button-group">
<a href="/invite/download_config/?token={{ peer_invite.uuid }}&password={{ password }}" target="_blank" class="btn btn-primary">Download Config</a>
<a href="#" id="viewQrButton" class="btn btn-secondary">View QR Code</a>
<a href="/invite/download_config/?token={{ peer_invite.uuid }}&password={{ password }}" target="_blank" class="btn btn-primary" id="downloadConfigButton">Download Config</a>
<a href="#" id="viewQrButton" class="btn btn-secondary"{% if not peer_invite.peer.private_key %} style="opacity: 0.5; cursor: not-allowed;"{% endif %}>View QR Code</a>
</div>
<div class="qr-code" id="qrCodeContainer">
<!-- QR Code will be loaded here when the button is clicked -->
@ -149,9 +149,15 @@
<script>
document.addEventListener("DOMContentLoaded", function() {
var viewQrButton = document.getElementById("viewQrButton");
var downloadConfigButton = document.getElementById("downloadConfigButton");
var qrCodeContainer = document.getElementById("qrCodeContainer");
var hasPrivateKey = {% if peer_invite.peer.private_key %}true{% else %}false{% endif %};
viewQrButton.addEventListener("click", function(event) {
event.preventDefault();
if (!hasPrivateKey) {
return false;
}
if (qrCodeContainer.style.display === "none" || qrCodeContainer.style.display === "") {
if (qrCodeContainer.getElementsByTagName("img").length === 0) {
var img = document.createElement("img");
@ -164,6 +170,15 @@
qrCodeContainer.style.display = "none";
}
});
downloadConfigButton.addEventListener("click", function(event) {
if (!hasPrivateKey) {
if (!confirm("This configuration does not contain a private key. You must add the private key manually in your client before using it.")) {
event.preventDefault();
return false;
}
}
});
});
</script>
{% endif %}

View File

@ -281,6 +281,9 @@
document.addEventListener('DOMContentLoaded', function() {
$("#qrcodeButton").on("click", function(e) {
e.preventDefault();
if ($(this).hasClass('disabled')) {
return false;
}
var uuid = $("#peerPreviewModal").data("peer-uuid");
$("#qrCodeImg").attr("src", "/tools/download_peer_config/?uuid=" + uuid + "&format=qrcode");
$(".info-content").hide();
@ -293,6 +296,16 @@
$(".qr-code-content").hide();
$(".info-content").show();
});
$("#downloadConfigButton").on("click", function(e) {
var hasPrivateKey = $("#peerPreviewModal").data("has-private-key");
if (!hasPrivateKey) {
if (!confirm("{% trans 'This configuration does not contain a private key. You must add the private key manually in your client before using it.' %}")) {
e.preventDefault();
return false;
}
}
});
});
</script>
@ -335,7 +348,14 @@
if (data.name) {
$('#peerPreviewModalLabel').text(data.name);
}
// Future additional peer information can be handled here.
// Check if peer has private_key and enable/disable buttons accordingly
if (!data.private_key_exists) {
$('#qrcodeButton').addClass('disabled').attr('aria-disabled', 'true');
$('#peerPreviewModal').data('has-private-key', false);
} else {
$('#qrcodeButton').removeClass('disabled').removeAttr('aria-disabled');
$('#peerPreviewModal').data('has-private-key', true);
}
},
error: function(xhr, status, error) {
console.error("Error fetching peer info:", error);