diff --git a/locale/de/LC_MESSAGES/django.po b/locale/de/LC_MESSAGES/django.po
index 0b9b203..2671b0a 100644
--- a/locale/de/LC_MESSAGES/django.po
+++ b/locale/de/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2026-02-03 14:49-0300\n"
+"POT-Creation-Date: 2026-02-09 13:51-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -73,7 +73,8 @@ msgstr "Token"
#: templates/wireguard/peer_list/peer_preview_modal.html:79
#: templates/wireguard/wireguard_manage_ip.html:42 user_manager/forms.py:49
#: user_manager/forms.py:180 vpn_invite/forms.py:192 vpn_invite/forms.py:326
-#: wireguard/forms.py:51 wireguard_peer/forms.py:27 wireguard_peer/forms.py:157
+#: wireguard/forms.py:51 wireguard_peer/forms.py:27 wireguard_peer/forms.py:156
+#: wireguard_peer/forms.py:210
msgid "Back"
msgstr "Zurück"
@@ -81,7 +82,7 @@ msgstr "Zurück"
#: routing_templates/forms.py:37
#: templates/firewall/manage_firewall_rule.html:382
#: templates/firewall/manage_redirect_rule.html:86
-#: templates/scheduler/scheduleprofile_form.html:112
+#: templates/scheduler/scheduleprofile_form.html:127
#: templates/scheduler/scheduleprofile_list.html:29
#: templates/wireguard/peer_list/peer_preview_modal.html:109
#: templates/wireguard/wireguard_manage_ip.html:43 user_manager/forms.py:48
@@ -90,14 +91,15 @@ msgid "Delete"
msgstr "Löschen"
#: cluster/forms.py:67 cluster/forms.py:124 dns/forms.py:37 dns/forms.py:83
-#: dns/forms.py:134 routing_templates/forms.py:70 scheduler/forms.py:61
+#: dns/forms.py:134 routing_templates/forms.py:70 scheduler/forms.py:102
#: templates/firewall/manage_firewall_rule.html:379
#: templates/firewall/manage_firewall_settings.html:59
#: templates/firewall/manage_redirect_rule.html:84
-#: templates/scheduler/scheduleprofile_form.html:134
+#: templates/scheduler/scheduleprofile_form.html:200
#: templates/wireguard/wireguard_manage_ip.html:41 user_manager/forms.py:98
#: user_manager/forms.py:205 vpn_invite/forms.py:191 vpn_invite/forms.py:325
#: wireguard/forms.py:100 wireguard_peer/forms.py:26
+#: wireguard_peer/forms.py:205
msgid "Save"
msgstr "Speichern"
@@ -167,7 +169,7 @@ msgstr "Ein Worker-Update ist erforderlich."
msgid "Access Denied"
msgstr "Zugriff verweigert"
-#: cluster/views.py:21 templates/template_parts/base_sidebar.html:97
+#: cluster/views.py:21 templates/template_parts/base_sidebar.html:107
msgid "Cluster"
msgstr "Cluster"
@@ -288,47 +290,67 @@ msgstr ""
"Kombination.
\n"
" "
-#: console/views.py:25 console/views.py:57 user_manager/forms.py:16
+#: console/views.py:27 console/views.py:67 user_manager/forms.py:16
msgid "Console"
msgstr "Konsole"
-#: console/views.py:27
+#: console/views.py:29
msgid "iptables list"
msgstr "iptables‑Regeln"
-#: console/views.py:33
+#: console/views.py:35
msgid "running processes"
msgstr "Laufende Prozesse"
-#: console/views.py:36
+#: console/views.py:38
msgid "WireGuard show"
msgstr "WireGuard‑Status"
-#: console/views.py:39
-msgid "Memory usage"
-msgstr "Speicherauslastung"
-
-#: console/views.py:42
-msgid "Routing table"
-msgstr "Routing‑Tabelle"
-
-#: console/views.py:54
-msgid "DNS container test script"
-msgstr "DNS‑Container‑Testskript"
-
-#: console/views.py:57
-msgid "Invalid command"
-msgstr "Ungültiger Befehl"
-
-#: console/views.py:64
-msgid "Invalid target"
-msgstr "Ungültiges Ziel"
-
-#: console/views.py:69
+#: console/views.py:40
msgid "Enhanced filter is enabled. This command is not available."
msgstr ""
"Der erweiterte Filter ist aktiviert. Dieser Befehl ist nicht verfügbar."
+#: console/views.py:46
+msgid "Memory usage"
+msgstr "Speicherauslastung"
+
+#: console/views.py:49
+msgid "Routing table"
+msgstr "Routing‑Tabelle"
+
+#: console/views.py:61
+msgid "DNS container test script"
+msgstr "DNS‑Container‑Testskript"
+
+#: console/views.py:64
+#, fuzzy
+#| msgid "WireGuard Status"
+msgid "Flush Wireguard status cache"
+msgstr "WireGuard‑Status"
+
+#: console/views.py:67
+msgid "Invalid command"
+msgstr "Ungültiger Befehl"
+
+#: console/views.py:78
+#, fuzzy
+#| msgid "Cluster mode requires WireGuard status cache to be enabled."
+msgid "Flushed WireGuard status cache for worker: "
+msgstr ""
+"Der Cluster-Modus erfordert die Aktivierung des WireGuard-Status-Caches."
+
+#: console/views.py:83
+#, fuzzy
+#| msgid "Cluster mode requires WireGuard status cache to be enabled."
+msgid "Flushed WireGuard status cache entries: "
+msgstr ""
+"Der Cluster-Modus erfordert die Aktivierung des WireGuard-Status-Caches."
+
+#: console/views.py:87
+msgid "Invalid target"
+msgstr "Ungültiges Ziel"
+
#: dns/forms.py:22 wireguard/forms.py:24
msgid "Primary DNS"
msgstr "Primärer DNS"
@@ -784,7 +806,7 @@ msgstr "Routen von allen Peers"
msgid "One route per line in CIDR notation."
msgstr "Eine Route pro Zeile in CIDR-Notation."
-#: routing_templates/views.py:16 templates/template_parts/base_sidebar.html:79
+#: routing_templates/views.py:16 templates/template_parts/base_sidebar.html:42
msgid "Routing Templates"
msgstr "Routing-Vorlagen"
@@ -888,100 +910,126 @@ msgstr ""
"Aktivierung dieser Option eine große Anzahl von Firewall-Regeln erzeugen.p>\n"
" "
-#: scheduler/forms.py:14
+#: scheduler/forms.py:17
msgid "Profile Name"
msgstr "Profilname"
-#: scheduler/forms.py:38 templates/scheduler/scheduleprofile_form.html:92
+#: scheduler/forms.py:74 templates/scheduler/scheduleprofile_form.html:107
msgid "Start Day"
msgstr "Starttag"
-#: scheduler/forms.py:39 templates/scheduler/scheduleprofile_form.html:93
+#: scheduler/forms.py:75 templates/scheduler/scheduleprofile_form.html:108
msgid "Start Time"
msgstr "Startzeit"
-#: scheduler/forms.py:40 templates/scheduler/scheduleprofile_form.html:94
+#: scheduler/forms.py:76 templates/scheduler/scheduleprofile_form.html:109
msgid "End Day"
msgstr "Endtag"
-#: scheduler/forms.py:41 templates/scheduler/scheduleprofile_form.html:95
+#: scheduler/forms.py:77 templates/scheduler/scheduleprofile_form.html:110
msgid "End Time"
msgstr "Endzeit"
-#: scheduler/models.py:9
+#: scheduler/forms.py:122
+msgid "Unable to validate overlaps: schedule profile is missing."
+msgstr ""
+
+#: scheduler/forms.py:129 scheduler/forms.py:132
+#, fuzzy
+#| msgid ""
+#| "The difference between suspend and unsuspend times must be at least 5 "
+#| "minutes."
+msgid "The minimum duration between start and end must be at least 10 minutes."
+msgstr ""
+"Die Differenz zwischen Sperr- und Reaktivierungszeit muss mindestens 5 "
+"Minuten betragen."
+
+#: scheduler/forms.py:150
+#, python-format
+msgid "This time slot overlaps with an existing slot (%(start)s → %(end)s)."
+msgstr ""
+
+#: scheduler/forms.py:160
+#, fuzzy
+#| msgid "Scheduled suspension time must be at least 10 minutes in the future."
+msgid "There must be at least 10 minutes between time slots."
+msgstr ""
+"Die geplante Sperrzeit muss mindestens 10 Minuten in der Zukunft liegen."
+
+#: scheduler/models.py:11
msgid "Monday"
msgstr "Montag"
-#: scheduler/models.py:10
+#: scheduler/models.py:12
msgid "Tuesday"
msgstr "Dienstag"
-#: scheduler/models.py:11
+#: scheduler/models.py:13
msgid "Wednesday"
msgstr "Mittwoch"
-#: scheduler/models.py:12
+#: scheduler/models.py:14
msgid "Thursday"
msgstr "Donnerstag"
-#: scheduler/models.py:13
+#: scheduler/models.py:15
msgid "Friday"
msgstr "Freitag"
-#: scheduler/models.py:14
+#: scheduler/models.py:16
msgid "Saturday"
msgstr "Samstag"
-#: scheduler/models.py:15
+#: scheduler/models.py:17
msgid "Sunday"
msgstr "Sonntag"
-#: scheduler/views.py:26
+#: scheduler/views.py:27
msgid "Edit Schedule Profile"
msgstr "Zeitplanprofil bearbeiten"
-#: scheduler/views.py:30
+#: scheduler/views.py:31
msgid "Create Schedule Profile"
msgstr "Zeitplanprofil erstellen"
-#: scheduler/views.py:37
+#: scheduler/views.py:44
msgid "Schedule Profile saved successfully."
msgstr "Zeitplanprofil erfolgreich gespeichert."
-#: scheduler/views.py:58
+#: scheduler/views.py:68
msgid "Schedule Profile deleted successfully."
msgstr "Zeitplanprofil erfolgreich gelöscht."
-#: scheduler/views.py:63
+#: scheduler/views.py:73
msgid "Delete Schedule Profile"
msgstr "Zeitplanprofil löschen"
-#: scheduler/views.py:65
+#: scheduler/views.py:75
#, python-format
msgid "Are you sure you want to delete the profile \"%(name)s\"?"
msgstr "Sind Sie sicher, dass Sie das Profil \"%(name)s\" löschen möchten?"
-#: scheduler/views.py:78
+#: scheduler/views.py:88
msgid "Edit Time Interval"
msgstr "Zeitintervall bearbeiten"
-#: scheduler/views.py:82
+#: scheduler/views.py:92
msgid "Add Time Interval"
msgstr "Zeitintervall hinzufügen"
-#: scheduler/views.py:92
+#: scheduler/views.py:102
msgid "Time Interval saved successfully."
msgstr "Zeitintervall erfolgreich gespeichert."
-#: scheduler/views.py:115
+#: scheduler/views.py:125
msgid "Time Interval deleted successfully."
msgstr "Zeitintervall erfolgreich gelöscht."
-#: scheduler/views.py:120
+#: scheduler/views.py:130
msgid "Delete Time Interval"
msgstr "Zeitintervall löschen"
-#: scheduler/views.py:122
+#: scheduler/views.py:132
msgid "Are you sure you want to delete this time interval?"
msgstr "Sind Sie sicher, dass Sie dieses Zeitintervall löschen möchten?"
@@ -1019,6 +1067,7 @@ msgid "Login again"
msgstr "Erneut anmelden"
#: templates/cluster/workers_list.html:9 templates/dns/static_host_list.html:72
+#: templates/scheduler/scheduleprofile_form.html:82
#: templates/template_parts/base_sidebar.html:13 vpn_invite/forms.py:78
#: vpn_invite/forms.py:79 vpn_invite/forms.py:80 vpn_invite/forms.py:81
#: vpn_invite/forms.py:82
@@ -1055,8 +1104,8 @@ msgstr "IP-Sperre aktiviert"
#: templates/cluster/workers_list.html:47
#: templates/cluster/workers_list.html:54
-#: templates/wireguard/wireguard_manage_peer.html:56
-#: templates/wireguard/wireguard_manage_peer.html:65
+#: templates/wireguard/wireguard_manage_peer.html:112
+#: templates/wireguard/wireguard_manage_peer.html:121
msgid "Not set"
msgstr "Nicht gesetzt"
@@ -1071,7 +1120,7 @@ msgstr "Zuletzt vor mehr als 10 Minuten gesehen oder noch nie gesehen."
#: templates/cluster/workers_list.html:77
#: templates/dns/static_host_list.html:74
#: templates/routing_templates/list.html:29
-#: templates/scheduler/scheduleprofile_form.html:108
+#: templates/scheduler/scheduleprofile_form.html:123
#: templates/scheduler/scheduleprofile_list.html:25
#: templates/user_manager/list.html:53
#: templates/user_manager/peer_group_list.html:35
@@ -1163,7 +1212,7 @@ msgstr "Ich verstehe"
msgid "Clear"
msgstr "Leeren"
-#: templates/console/console.html:27
+#: templates/console/console.html:28
msgid "Destination Hostname or IP Address"
msgstr "Ziel‑Hostname oder IP‑Adresse"
@@ -1450,6 +1499,7 @@ msgstr "Zieltyp"
#: templates/firewall/manage_redirect_rule.html:42
#: templates/firewall/manage_redirect_rule.html:48
+#: templates/scheduler/scheduleprofile_form.html:159
#: templates/vpn_invite/invite_settings.html:17 user_manager/forms.py:178
msgid "Peer"
msgstr "Peer"
@@ -1550,7 +1600,7 @@ msgid "Confirm Delete"
msgstr "Löschen bestätigen"
#: templates/generic_delete_confirmation.html:19
-#: templates/scheduler/scheduleprofile_form.html:137
+#: templates/scheduler/scheduleprofile_form.html:203
msgid "Cancel"
msgstr "Abbrechen"
@@ -1568,31 +1618,87 @@ msgstr "Zeitplan-Visualisierung"
#: templates/scheduler/scheduleprofile_form.html:70
#: templates/wireguard/apply_route_template.html:44
+#: templates/wireguard/wireguard_manage_peer.html:36
msgid "Active"
msgstr "Aktiv"
#: templates/scheduler/scheduleprofile_form.html:71
+#: templates/scheduler/scheduleprofile_form.html:82
msgid "Inactive"
msgstr "Inaktiv"
-#: templates/scheduler/scheduleprofile_form.html:82
+#: templates/scheduler/scheduleprofile_form.html:78
+#, fuzzy
+#| msgid "Current Active Template:"
+msgid "Current time"
+msgstr "Aktuell aktive Vorlage:"
+
+#: templates/scheduler/scheduleprofile_form.html:79
+msgid "Becomes active at"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:80
+msgid "Becomes inactive at"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:97
msgid "Time Intervals"
msgstr "Zeitintervalle"
-#: templates/scheduler/scheduleprofile_form.html:85
+#: templates/scheduler/scheduleprofile_form.html:100
msgid "Add Interval"
msgstr "Intervall hinzufügen"
-#: templates/scheduler/scheduleprofile_form.html:96
+#: templates/scheduler/scheduleprofile_form.html:111
#: templates/scheduler/scheduleprofile_list.html:15
#: templates/wireguard/apply_route_template.html:28
msgid "Actions"
msgstr "Aktionen"
-#: templates/scheduler/scheduleprofile_form.html:120
+#: templates/scheduler/scheduleprofile_form.html:135
msgid "No time intervals found."
msgstr "Keine Zeitintervalle gefunden."
+#: templates/scheduler/scheduleprofile_form.html:152
+msgid "Linked Peers (Debug)"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:160
+#, fuzzy
+#| msgid "Disabled Peers"
+msgid "Disabled by Schedule"
+msgstr "Deaktivierte Peers"
+
+#: templates/scheduler/scheduleprofile_form.html:161
+#, fuzzy
+#| msgid "Restart Enabled"
+msgid "Next Enable"
+msgstr "Neustart aktiviert"
+
+#: templates/scheduler/scheduleprofile_form.html:162
+#, fuzzy
+#| msgid "Disabled"
+msgid "Next Disable"
+msgstr "Deaktiviert"
+
+#: templates/scheduler/scheduleprofile_form.html:175
+msgid "Yes"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:177
+msgid "No"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:185
+msgid "No peers linked to this profile."
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:207
+#, fuzzy
+#| msgid "Show extras"
+msgid "Show Peers"
+msgstr "Extras anzeigen"
+
#: templates/scheduler/scheduleprofile_list.html:7
msgid "Schedule Profiles"
msgstr "Zeitplanprofile"
@@ -1641,20 +1747,20 @@ msgstr "Aktualisieren und Dienst neu starten"
msgid "Update and reload service"
msgstr "Aktualisieren und Dienst neu laden"
-#: templates/template_parts/base_sidebar.html:59 user_manager/views.py:74
+#: templates/template_parts/base_sidebar.html:32
+msgid "Scheduler"
+msgstr "Zeitplaner"
+
+#: templates/template_parts/base_sidebar.html:79 user_manager/views.py:74
msgid "User Manager"
msgstr "Benutzerverwaltung"
-#: templates/template_parts/base_sidebar.html:88
+#: templates/template_parts/base_sidebar.html:98
#: templates/wireguard/peer_list/peer_preview_modal.html:133
#: vpn_invite/views.py:37
msgid "VPN Invite"
msgstr "VPN‑Einladung"
-#: templates/template_parts/base_sidebar.html:107
-msgid "Scheduler"
-msgstr "Zeitplaner"
-
#: templates/user_manager/list.html:9 user_manager/forms.py:20
msgid "User Level"
msgstr "Benutzerstufe"
@@ -1732,7 +1838,7 @@ msgstr "E‑Mail‑Einstellungen"
msgid "Invite Settings"
msgstr "Einladungs‑Einstellungen"
-#: templates/wireguard/apply_route_template.html:8 wireguard_peer/views.py:390
+#: templates/wireguard/apply_route_template.html:8 wireguard_peer/views.py:400
msgid "Apply Route Template"
msgstr "Routen-Vorlage anwenden"
@@ -1777,7 +1883,7 @@ msgstr "Übertragen"
#: templates/wireguard/peer_list/peer_data.html:44
#: templates/wireguard/peer_list/script_wireguard_status_update.html:146
-#: wireguard_peer/views.py:112
+#: wireguard_peer/views.py:115
msgid "Primary Server"
msgstr "Primärer Server"
@@ -1797,12 +1903,12 @@ msgid "Allowed IPs"
msgstr "Erlaubte IPs"
#: templates/wireguard/peer_list/peer_preview_modal.html:45
-#: templates/wireguard/wireguard_manage_peer.html:79
+#: templates/wireguard/wireguard_manage_peer.html:135
msgid "Peer Traffic"
msgstr "Peer‑Traffic"
#: templates/wireguard/peer_list/peer_preview_modal.html:61
-#: templates/wireguard/wireguard_manage_peer.html:96
+#: templates/wireguard/wireguard_manage_peer.html:152
msgid "No traffic history, please wait a few minutes"
msgstr "Keine Verkehrsdaten vorhanden, bitte einige Minuten warten"
@@ -1961,7 +2067,7 @@ msgstr ""
"Konfiguration ist veraltet."
#: templates/wireguard/server_detail.html:17
-#: templates/wireguard/wireguard_manage_peer.html:48 wireguard/forms.py:18
+#: templates/wireguard/wireguard_manage_peer.html:104 wireguard/forms.py:18
#: wireguard_peer/forms.py:52
msgid "Public Key"
msgstr "Public Key"
@@ -2005,8 +2111,8 @@ msgid "Enter Allowed IP"
msgstr "Erlaubte IP eingeben"
#: templates/wireguard/wireguard_manage_ip.html:34
-#: templates/wireguard/wireguard_manage_peer.html:131
-#: templates/wireguard/wireguard_manage_peer.html:220
+#: templates/wireguard/wireguard_manage_peer.html:187
+#: templates/wireguard/wireguard_manage_peer.html:276
#: wireguard_peer/forms.py:71
msgid "Priority"
msgstr "Priorität"
@@ -2019,65 +2125,122 @@ msgstr "Geben Sie \\\"delete\\\" ein, um diese IP‑Adresse zu löschen."
msgid "Peer Configuration"
msgstr "Peer‑Konfiguration"
-#: templates/wireguard/wireguard_manage_peer.html:27 wireguard_peer/forms.py:41
+#: templates/wireguard/wireguard_manage_peer.html:27
+#, fuzzy
+#| msgid "Packet State"
+msgid "Peer State"
+msgstr "Paket‑Zustand"
+
+#: templates/wireguard/wireguard_manage_peer.html:31
+#, fuzzy
+#| msgid "Suspend"
+msgid "Suspended"
+msgstr "Sperren"
+
+#: templates/wireguard/wireguard_manage_peer.html:40
+#, fuzzy
+#| msgid "Schedule"
+msgid "Scheduled suspend"
+msgstr "Planen"
+
+#: templates/wireguard/wireguard_manage_peer.html:43
+msgid "Scheduled unsuspend"
+msgstr ""
+
+#: templates/wireguard/wireguard_manage_peer.html:54
+#, fuzzy
+#| msgid "Clear Schedule"
+msgid "Peer Schedule"
+msgstr "Zeitplan löschen"
+
+#: templates/wireguard/wireguard_manage_peer.html:60
+#, fuzzy
+#| msgid "Disabled Peers"
+msgid "Disabled by schedule"
+msgstr "Deaktivierte Peers"
+
+#: templates/wireguard/wireguard_manage_peer.html:62
+#, fuzzy
+#| msgid "Restart Enabled"
+msgid "Next enable"
+msgstr "Neustart aktiviert"
+
+#: templates/wireguard/wireguard_manage_peer.html:65
+#, fuzzy
+#| msgid "Enabled Peers"
+msgid "Enabled by schedule"
+msgstr "Aktivierte Peers"
+
+#: templates/wireguard/wireguard_manage_peer.html:67
+#, fuzzy
+#| msgid "Disabled"
+msgid "Next disable"
+msgstr "Deaktiviert"
+
+#: templates/wireguard/wireguard_manage_peer.html:71
+msgid "No profile associated"
+msgstr ""
+
+#: templates/wireguard/wireguard_manage_peer.html:83 wireguard_peer/forms.py:41
msgid "Persistent Keepalive"
msgstr "Persistent Keepalive"
-#: templates/wireguard/wireguard_manage_peer.html:40
+#: templates/wireguard/wireguard_manage_peer.html:96
msgid "Keys"
msgstr "Schlüssel"
-#: templates/wireguard/wireguard_manage_peer.html:51 wireguard/forms.py:17
+#: templates/wireguard/wireguard_manage_peer.html:107 wireguard/forms.py:17
#: wireguard_peer/forms.py:53
msgid "Private Key"
msgstr "Private Key"
-#: templates/wireguard/wireguard_manage_peer.html:60 wireguard_peer/forms.py:54
+#: templates/wireguard/wireguard_manage_peer.html:116
+#: wireguard_peer/forms.py:54
msgid "Pre-Shared Key"
msgstr "Pre‑Shared Key"
-#: templates/wireguard/wireguard_manage_peer.html:110
+#: templates/wireguard/wireguard_manage_peer.html:166
msgid "AllowedIPs at Peer section of wg"
msgstr "AllowedIPs in der Peer‑Sektion von wg"
-#: templates/wireguard/wireguard_manage_peer.html:111
+#: templates/wireguard/wireguard_manage_peer.html:167
msgid "Peer IP Addresses and networks"
msgstr "Peer‑IP‑Adressen und Netze"
-#: templates/wireguard/wireguard_manage_peer.html:115
+#: templates/wireguard/wireguard_manage_peer.html:171
msgid "Add IP Address"
msgstr "IP‑Adresse hinzufügen"
-#: templates/wireguard/wireguard_manage_peer.html:129
-#: templates/wireguard/wireguard_manage_peer.html:218
+#: templates/wireguard/wireguard_manage_peer.html:185
+#: templates/wireguard/wireguard_manage_peer.html:274
msgid "Main ip address"
msgstr "Haupt‑IP‑Adresse"
-#: templates/wireguard/wireguard_manage_peer.html:144
+#: templates/wireguard/wireguard_manage_peer.html:200
msgid "AllowedIPs at client configuration file"
msgstr "AllowedIPs in der Client-Konfigurationsdatei"
-#: templates/wireguard/wireguard_manage_peer.html:145
+#: templates/wireguard/wireguard_manage_peer.html:201
msgid "Client Routing"
msgstr "Client-Routing"
-#: templates/wireguard/wireguard_manage_peer.html:150
+#: templates/wireguard/wireguard_manage_peer.html:206
msgid "Apply template"
msgstr "Vorlage anwenden"
-#: templates/wireguard/wireguard_manage_peer.html:154
+#: templates/wireguard/wireguard_manage_peer.html:210
msgid "Add Client route"
msgstr "Client‑Route hinzufügen"
-#: templates/wireguard/wireguard_manage_peer.html:167
+#: templates/wireguard/wireguard_manage_peer.html:223
msgid "Routing Template"
msgstr "Routenvorlage"
-#: templates/wireguard/wireguard_manage_peer.html:180
+#: templates/wireguard/wireguard_manage_peer.html:236
msgid "Template Route"
msgstr "Vorlagenroute"
-#: templates/wireguard/wireguard_manage_peer.html:191
+#: templates/wireguard/wireguard_manage_peer.html:247
msgid ""
"The client is not configured to use the VPN as the default gateway."
"\\n\\nOnly the specific networks listed below are routed through the VPN."
@@ -2090,7 +2253,7 @@ msgstr ""
"geroutet.\\n\\nHinweis: Diese Routen werden nicht automatisch zum Client "
"übertragen; Sie müssen die Client‑Konfigurationsdatei manuell anpassen."
-#: templates/wireguard/wireguard_manage_peer.html:194
+#: templates/wireguard/wireguard_manage_peer.html:250
msgid ""
"The client is configured to use the VPN as the default gateway. \\n\\nThis "
"setting routes all client internet traffic through the VPN, enhancing "
@@ -2100,27 +2263,27 @@ msgstr ""
"gesamte Internet‑Verkehr des Clients durch das VPN geleitet, was "
"Privatsphäre und Sicherheit erhöht."
-#: templates/wireguard/wireguard_manage_peer.html:202
+#: templates/wireguard/wireguard_manage_peer.html:258
msgid "default route"
msgstr "Standard‑Route"
-#: templates/wireguard/wireguard_manage_peer.html:236
+#: templates/wireguard/wireguard_manage_peer.html:292
msgid "Peer List"
msgstr "Peer-Liste"
-#: templates/wireguard/wireguard_manage_peer.html:240
+#: templates/wireguard/wireguard_manage_peer.html:296
msgid "Reactivate"
msgstr "Reaktivieren"
-#: templates/wireguard/wireguard_manage_peer.html:242
+#: templates/wireguard/wireguard_manage_peer.html:298
msgid "Suspend"
msgstr "Sperren"
-#: templates/wireguard/wireguard_manage_peer.html:246
+#: templates/wireguard/wireguard_manage_peer.html:302
msgid "Delete Peer"
msgstr "Peer löschen"
-#: templates/wireguard/wireguard_manage_peer.html:256
+#: templates/wireguard/wireguard_manage_peer.html:312
msgid "Please type \\\"delete\\\" to remove peer configuration."
msgstr "Geben Sie \\\"delete\\\" ein, um die Peer‑Konfiguration zu entfernen."
@@ -2779,8 +2942,10 @@ msgstr "Interne IP‑Adresse"
#: wireguard/forms.py:117
msgid "Peer List Refresh Interval must be at least 5 seconds"
-msgstr "Das Aktualisierungsintervall der Peer-Liste muss mindestens 5 Sekunden betragen"
-"Aktualisierungsintervall der Peer‑Liste muss mindestens 5 Sekunden betragen"
+msgstr ""
+"Das Aktualisierungsintervall der Peer-Liste muss mindestens 5 Sekunden "
+"betragenAktualisierungsintervall der Peer‑Liste muss mindestens 5 Sekunden "
+"betragen"
#: wireguard/forms.py:120
msgid "Invalid hostname or IP Address"
@@ -2893,15 +3058,15 @@ msgstr "Jetzt reaktivieren"
msgid "Suspend now"
msgstr "Jetzt sperren"
-#: wireguard_peer/forms.py:140
+#: wireguard_peer/forms.py:139
msgid "Schedule"
msgstr "Planen"
-#: wireguard_peer/forms.py:144
+#: wireguard_peer/forms.py:143
msgid "Clear Schedule"
msgstr "Zeitplan löschen"
-#: wireguard_peer/forms.py:182
+#: wireguard_peer/forms.py:181
msgid ""
"The difference between suspend and unsuspend times must be at least 5 "
"minutes."
@@ -2909,73 +3074,73 @@ msgstr ""
"Die Differenz zwischen Sperr- und Reaktivierungszeit muss mindestens 5 "
"Minuten betragen."
-#: wireguard_peer/forms.py:186
+#: wireguard_peer/forms.py:185
msgid "Scheduled suspension time must be at least 10 minutes in the future."
msgstr ""
"Die geplante Sperrzeit muss mindestens 10 Minuten in der Zukunft liegen."
-#: wireguard_peer/forms.py:189
+#: wireguard_peer/forms.py:188
msgid "Scheduled unsuspension time must be at least 10 minutes in the future."
msgstr ""
"Die geplante Reaktivierungszeit muss mindestens 10 Minuten in der Zukunft "
"liegen."
-#: wireguard_peer/views.py:58
+#: wireguard_peer/views.py:61
msgid "Disabled WireGuard Peer List"
msgstr "Liste deaktivierter WireGuard-Peers"
-#: wireguard_peer/views.py:61
+#: wireguard_peer/views.py:64
msgid "WireGuard Peer List"
msgstr "WireGuard‑Peer‑Liste"
-#: wireguard_peer/views.py:198
+#: wireguard_peer/views.py:201
msgid "Peer created|Peer created successfully."
msgstr "Peer erstellt|Peer erfolgreich erstellt."
-#: wireguard_peer/views.py:203
+#: wireguard_peer/views.py:206
msgid "Error creating peer|No available IP address found for peer creation."
msgstr "Fehler beim Erstellen des Peers|Keine freie IP‑Adresse verfügbar."
-#: wireguard_peer/views.py:226
+#: wireguard_peer/views.py:229
msgid "Peer deleted|Peer deleted successfully."
msgstr "Peer gelöscht|Peer erfolgreich gelöscht."
-#: wireguard_peer/views.py:229
+#: wireguard_peer/views.py:232
msgid ""
"Error deleting peer|Invalid confirmation message. Type \"delete\" to confirm."
msgstr ""
"Fehler beim Löschen des Peers|Ungültige Bestätigung. Geben Sie \"delete\" "
"ein, um zu bestätigen."
-#: wireguard_peer/views.py:231
+#: wireguard_peer/views.py:234
msgid "Peer Configuration: "
msgstr "Peerkonfiguration: "
-#: wireguard_peer/views.py:269
+#: wireguard_peer/views.py:279
msgid "Peer updated|Peer updated successfully."
msgstr "Peer aktualisiert|Peer erfolgreich aktualisiert."
-#: wireguard_peer/views.py:272
+#: wireguard_peer/views.py:282
msgid "Edit Peer"
msgstr "Peer bearbeiten"
-#: wireguard_peer/views.py:274
+#: wireguard_peer/views.py:284
msgid "Edit Peer Name"
msgstr "Peernamen bearbeiten"
-#: wireguard_peer/views.py:276
+#: wireguard_peer/views.py:286
msgid "Edit Keepalive"
msgstr "Keepalive bearbeiten"
-#: wireguard_peer/views.py:278
+#: wireguard_peer/views.py:288
msgid "Edit Keys"
msgstr "Schlüssel bearbeiten"
-#: wireguard_peer/views.py:310
+#: wireguard_peer/views.py:320
msgid "IP address deleted|IP address deleted successfully."
msgstr "IP‑Adresse gelöscht|IP‑Adresse erfolgreich gelöscht."
-#: wireguard_peer/views.py:315
+#: wireguard_peer/views.py:325
msgid ""
"Error deleting IP address|Invalid confirmation message. Type \"delete\" to "
"confirm."
@@ -2983,27 +3148,27 @@ msgstr ""
"Fehler beim Löschen der IP‑Adresse|Ungültige Bestätigung. Geben Sie "
"\"delete\" ein, um zu bestätigen."
-#: wireguard_peer/views.py:320
+#: wireguard_peer/views.py:330
msgid "Manage client route"
msgstr "Client‑Route verwalten"
-#: wireguard_peer/views.py:322
+#: wireguard_peer/views.py:332
msgid "Manage IP address or Network"
msgstr "IP‑Adresse oder Netzwerk verwalten"
-#: wireguard_peer/views.py:335
+#: wireguard_peer/views.py:345
msgid "IP address updated|IP address updated successfully."
msgstr "IP‑Adresse aktualisiert|IP‑Adresse erfolgreich aktualisiert."
-#: wireguard_peer/views.py:337
+#: wireguard_peer/views.py:347
msgid "IP address added|IP address added successfully."
msgstr "IP‑Adresse hinzugefügt|IP‑Adresse erfolgreich hinzugefügt."
-#: wireguard_peer/views.py:369
+#: wireguard_peer/views.py:379
msgid "Route template unlinked successfully."
msgstr "Routen-Vorlage erfolgreich getrennt."
-#: wireguard_peer/views.py:379
+#: wireguard_peer/views.py:389
msgid ""
"Cannot apply template: This template does not allow custom routes, but the "
"peer has custom client routes defined."
@@ -3012,15 +3177,15 @@ msgstr ""
"benutzerdefinierten Routen, aber der Peer hat benutzerdefinierte Client-"
"Routen definiert."
-#: wireguard_peer/views.py:386
+#: wireguard_peer/views.py:396
msgid "Route template applied successfully."
msgstr "Routen-Vorlage erfolgreich angewendet."
-#: wireguard_peer/views.py:419
+#: wireguard_peer/views.py:429
msgid "Peer suspension/unsuspension scheduled successfully."
msgstr "Peer-Sperrung/Reaktivierung erfolgreich geplant."
-#: wireguard_peer/views.py:423
+#: wireguard_peer/views.py:431
msgid ""
"Error scheduling peer suspension/unsuspension. Please correct the errors "
"below."
@@ -3028,27 +3193,47 @@ msgstr ""
"Fehler bei der Planung der Peer-Sperrung/Reaktivierung. Bitte korrigieren "
"Sie die Fehler unten."
-#: wireguard_peer/views.py:430
+#: wireguard_peer/views.py:438
msgid "Schedule cleared successfully."
msgstr "Zeitplan erfolgreich gelöscht."
-#: wireguard_peer/views.py:438
+#: wireguard_peer/views.py:452
msgid "Peer suspended successfully."
msgstr "Peer erfolgreich gesperrt."
-#: wireguard_peer/views.py:446
+#: wireguard_peer/views.py:454
+msgid "Peer suspended, but failed to reload WireGuard interface: "
+msgstr ""
+
+#: wireguard_peer/views.py:464
msgid "Peer reactivated successfully."
msgstr "Peer erfolgreich reaktiviert."
-#: wireguard_peer/views.py:450
+#: wireguard_peer/views.py:466
+msgid "Peer reactivated, but failed to reload WireGuard interface: "
+msgstr ""
+
+#: wireguard_peer/views.py:469
msgid "Invalid action."
msgstr "Ungültige Aktion."
-#: wireguard_peer/views.py:455
+#: wireguard_peer/views.py:474
msgid "Suspend / Reactivate Peer"
msgstr "Peer sperren / reaktivieren"
-#: wireguard_tools/views.py:181
+#: wireguard_peer/views.py:497
+#, fuzzy
+#| msgid "Schedule Profile deleted successfully."
+msgid "Peer scheduling profile updated successfully."
+msgstr "Zeitplanprofil erfolgreich gelöscht."
+
+#: wireguard_peer/views.py:503
+#, fuzzy
+#| msgid "Delete Schedule Profile"
+msgid "Manage Peer Schedule Profile"
+msgstr "Zeitplanprofil löschen"
+
+#: wireguard_tools/views.py:237
msgid ""
"Export successful!|WireGuard configuration files have been exported to /etc/"
"wireguard/."
@@ -3056,7 +3241,7 @@ msgstr ""
"Export erfolgreich!|WireGuard‑Konfigurationsdateien wurden nach /etc/"
"wireguard/ exportiert."
-#: wireguard_tools/views.py:183
+#: wireguard_tools/views.py:239
msgid ""
"Export successful!|WireGuard configuration files have been exported to /etc/"
"wireguard/. Don't forget to restart the interfaces."
@@ -3064,19 +3249,19 @@ msgstr ""
"Export erfolgreich!|WireGuard‑Konfigurationsdateien wurden nach /etc/"
"wireguard/ exportiert. Vergessen Sie nicht, die Interfaces neu zu starten."
-#: wireguard_tools/views.py:285
+#: wireguard_tools/views.py:341
msgid "Error reloading"
msgstr "Fehler beim Neu laden"
-#: wireguard_tools/views.py:297
+#: wireguard_tools/views.py:353
msgid "Error stopping"
msgstr "Fehler beim Stoppen"
-#: wireguard_tools/views.py:302
+#: wireguard_tools/views.py:358
msgid "Error starting"
msgstr "Fehler beim Starten"
-#: wireguard_tools/views.py:309
+#: wireguard_tools/views.py:365
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, "
@@ -3086,21 +3271,21 @@ msgstr ""
"Sie, ob alle Peers wie erwartet funktionieren. Melden Sie eventuelle "
"Probleme."
-#: wireguard_tools/views.py:310
+#: wireguard_tools/views.py:366
msgid "WireGuard reloaded|The WireGuard service has been reloaded."
msgstr "WireGuard neu geladen|Der WireGuard‑Dienst wurde neu geladen."
-#: wireguard_tools/views.py:312
+#: wireguard_tools/views.py:368
msgid "WireGuard restarted|The WireGuard service has been restarted."
msgstr "WireGuard neu gestartet|Der WireGuard‑Dienst wurde neu gestartet."
-#: wireguard_tools/views.py:315
+#: wireguard_tools/views.py:371
msgid "Errors encountered|Error processing one or more interfaces."
msgstr ""
"Fehler festgestellt|Beim Verarbeiten einer oder mehrerer Schnittstellen ist "
"ein Fehler aufgetreten."
-#: wireguard_tools/views.py:318
+#: wireguard_tools/views.py:374
msgid "No interfaces found|No WireGuard interfaces were found to process."
msgstr ""
"Keine Schnittstellen gefunden|Es wurden keine WireGuard‑Schnittstellen "
diff --git a/locale/es/LC_MESSAGES/django.po b/locale/es/LC_MESSAGES/django.po
index 25cabad..11240da 100644
--- a/locale/es/LC_MESSAGES/django.po
+++ b/locale/es/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2026-02-03 14:49-0300\n"
+"POT-Creation-Date: 2026-02-09 13:51-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -73,7 +73,8 @@ msgstr "Token"
#: templates/wireguard/peer_list/peer_preview_modal.html:79
#: templates/wireguard/wireguard_manage_ip.html:42 user_manager/forms.py:49
#: user_manager/forms.py:180 vpn_invite/forms.py:192 vpn_invite/forms.py:326
-#: wireguard/forms.py:51 wireguard_peer/forms.py:27 wireguard_peer/forms.py:157
+#: wireguard/forms.py:51 wireguard_peer/forms.py:27 wireguard_peer/forms.py:156
+#: wireguard_peer/forms.py:210
msgid "Back"
msgstr "Volver"
@@ -81,7 +82,7 @@ msgstr "Volver"
#: routing_templates/forms.py:37
#: templates/firewall/manage_firewall_rule.html:382
#: templates/firewall/manage_redirect_rule.html:86
-#: templates/scheduler/scheduleprofile_form.html:112
+#: templates/scheduler/scheduleprofile_form.html:127
#: templates/scheduler/scheduleprofile_list.html:29
#: templates/wireguard/peer_list/peer_preview_modal.html:109
#: templates/wireguard/wireguard_manage_ip.html:43 user_manager/forms.py:48
@@ -90,14 +91,15 @@ msgid "Delete"
msgstr "Eliminar"
#: cluster/forms.py:67 cluster/forms.py:124 dns/forms.py:37 dns/forms.py:83
-#: dns/forms.py:134 routing_templates/forms.py:70 scheduler/forms.py:61
+#: dns/forms.py:134 routing_templates/forms.py:70 scheduler/forms.py:102
#: templates/firewall/manage_firewall_rule.html:379
#: templates/firewall/manage_firewall_settings.html:59
#: templates/firewall/manage_redirect_rule.html:84
-#: templates/scheduler/scheduleprofile_form.html:134
+#: templates/scheduler/scheduleprofile_form.html:200
#: templates/wireguard/wireguard_manage_ip.html:41 user_manager/forms.py:98
#: user_manager/forms.py:205 vpn_invite/forms.py:191 vpn_invite/forms.py:325
#: wireguard/forms.py:100 wireguard_peer/forms.py:26
+#: wireguard_peer/forms.py:205
msgid "Save"
msgstr "Guardar"
@@ -169,7 +171,7 @@ msgstr "Se requiere la actualización del worker."
msgid "Access Denied"
msgstr "Acceso denegado"
-#: cluster/views.py:21 templates/template_parts/base_sidebar.html:97
+#: cluster/views.py:21 templates/template_parts/base_sidebar.html:107
msgid "Cluster"
msgstr "Cluster"
@@ -289,46 +291,68 @@ msgstr ""
"por nombre, dirección del servidor, ubicación o una combinación.\n"
" "
-#: console/views.py:25 console/views.py:57 user_manager/forms.py:16
+#: console/views.py:27 console/views.py:67 user_manager/forms.py:16
msgid "Console"
msgstr "Consola"
-#: console/views.py:27
+#: console/views.py:29
msgid "iptables list"
msgstr "Lista de reglas de iptables"
-#: console/views.py:33
+#: console/views.py:35
msgid "running processes"
msgstr "Procesos en ejecución"
-#: console/views.py:36
+#: console/views.py:38
msgid "WireGuard show"
msgstr "Estado de WireGuard"
-#: console/views.py:39
+#: console/views.py:40
+msgid "Enhanced filter is enabled. This command is not available."
+msgstr "El filtro mejorado está habilitado. Este comando no está disponible."
+
+#: console/views.py:46
msgid "Memory usage"
msgstr "Uso de memoria"
-#: console/views.py:42
+#: console/views.py:49
msgid "Routing table"
msgstr "Tabla de enrutamiento"
-#: console/views.py:54
+#: console/views.py:61
msgid "DNS container test script"
msgstr "Script de prueba del contenedor DNS"
-#: console/views.py:57
+#: console/views.py:64
+#, fuzzy
+#| msgid "WireGuard Status"
+msgid "Flush Wireguard status cache"
+msgstr "Estado de WireGuard"
+
+#: console/views.py:67
msgid "Invalid command"
msgstr "Comando inválido"
-#: console/views.py:64
+#: console/views.py:78
+#, fuzzy
+#| msgid "Cluster mode requires WireGuard status cache to be enabled."
+msgid "Flushed WireGuard status cache for worker: "
+msgstr ""
+"El modo de clúster requiere que el caché de estado de WireGuard esté "
+"habilitado."
+
+#: console/views.py:83
+#, fuzzy
+#| msgid "Cluster mode requires WireGuard status cache to be enabled."
+msgid "Flushed WireGuard status cache entries: "
+msgstr ""
+"El modo de clúster requiere que el caché de estado de WireGuard esté "
+"habilitado."
+
+#: console/views.py:87
msgid "Invalid target"
msgstr "Destino inválido"
-#: console/views.py:69
-msgid "Enhanced filter is enabled. This command is not available."
-msgstr "El filtro mejorado está habilitado. Este comando no está disponible."
-
#: dns/forms.py:22 wireguard/forms.py:24
msgid "Primary DNS"
msgstr "DNS primario"
@@ -780,7 +804,7 @@ msgstr "Rutas de Todos los Pares"
msgid "One route per line in CIDR notation."
msgstr "Una ruta por línea en notación CIDR."
-#: routing_templates/views.py:16 templates/template_parts/base_sidebar.html:79
+#: routing_templates/views.py:16 templates/template_parts/base_sidebar.html:42
msgid "Routing Templates"
msgstr "Plantillas de Enrutamiento"
@@ -882,100 +906,126 @@ msgstr ""
"opción puede generar un gran número de reglas de cortafuegos.\n"
" "
-#: scheduler/forms.py:14
+#: scheduler/forms.py:17
msgid "Profile Name"
msgstr "Nombre del Perfil"
-#: scheduler/forms.py:38 templates/scheduler/scheduleprofile_form.html:92
+#: scheduler/forms.py:74 templates/scheduler/scheduleprofile_form.html:107
msgid "Start Day"
msgstr "Día de Inicio"
-#: scheduler/forms.py:39 templates/scheduler/scheduleprofile_form.html:93
+#: scheduler/forms.py:75 templates/scheduler/scheduleprofile_form.html:108
msgid "Start Time"
msgstr "Hora de Inicio"
-#: scheduler/forms.py:40 templates/scheduler/scheduleprofile_form.html:94
+#: scheduler/forms.py:76 templates/scheduler/scheduleprofile_form.html:109
msgid "End Day"
msgstr "Día de Fin"
-#: scheduler/forms.py:41 templates/scheduler/scheduleprofile_form.html:95
+#: scheduler/forms.py:77 templates/scheduler/scheduleprofile_form.html:110
msgid "End Time"
msgstr "Hora de Fin"
-#: scheduler/models.py:9
+#: scheduler/forms.py:122
+msgid "Unable to validate overlaps: schedule profile is missing."
+msgstr ""
+
+#: scheduler/forms.py:129 scheduler/forms.py:132
+#, fuzzy
+#| msgid ""
+#| "The difference between suspend and unsuspend times must be at least 5 "
+#| "minutes."
+msgid "The minimum duration between start and end must be at least 10 minutes."
+msgstr ""
+"La diferencia entre el horario de suspensión y el de reactivación debe ser "
+"de al menos 5 minutos."
+
+#: scheduler/forms.py:150
+#, python-format
+msgid "This time slot overlaps with an existing slot (%(start)s → %(end)s)."
+msgstr ""
+
+#: scheduler/forms.py:160
+#, fuzzy
+#| msgid "Scheduled suspension time must be at least 10 minutes in the future."
+msgid "There must be at least 10 minutes between time slots."
+msgstr ""
+"La programación de la suspensión debe ser al menos 10 minutos en el futuro."
+
+#: scheduler/models.py:11
msgid "Monday"
msgstr "Lunes"
-#: scheduler/models.py:10
+#: scheduler/models.py:12
msgid "Tuesday"
msgstr "Martes"
-#: scheduler/models.py:11
+#: scheduler/models.py:13
msgid "Wednesday"
msgstr "Miércoles"
-#: scheduler/models.py:12
+#: scheduler/models.py:14
msgid "Thursday"
msgstr "Jueves"
-#: scheduler/models.py:13
+#: scheduler/models.py:15
msgid "Friday"
msgstr "Viernes"
-#: scheduler/models.py:14
+#: scheduler/models.py:16
msgid "Saturday"
msgstr "Sábado"
-#: scheduler/models.py:15
+#: scheduler/models.py:17
msgid "Sunday"
msgstr "Domingo"
-#: scheduler/views.py:26
+#: scheduler/views.py:27
msgid "Edit Schedule Profile"
msgstr "Editar Perfil de Programación"
-#: scheduler/views.py:30
+#: scheduler/views.py:31
msgid "Create Schedule Profile"
msgstr "Crear Perfil de Programación"
-#: scheduler/views.py:37
+#: scheduler/views.py:44
msgid "Schedule Profile saved successfully."
msgstr "Perfil de programación guardado con éxito."
-#: scheduler/views.py:58
+#: scheduler/views.py:68
msgid "Schedule Profile deleted successfully."
msgstr "Perfil de programación eliminado con éxito."
-#: scheduler/views.py:63
+#: scheduler/views.py:73
msgid "Delete Schedule Profile"
msgstr "Eliminar Perfil de Programación"
-#: scheduler/views.py:65
+#: scheduler/views.py:75
#, python-format
msgid "Are you sure you want to delete the profile \"%(name)s\"?"
msgstr "¿Está seguro de que desea eliminar el perfil \"%(name)s\"?"
-#: scheduler/views.py:78
+#: scheduler/views.py:88
msgid "Edit Time Interval"
msgstr "Editar Intervalo de Tiempo"
-#: scheduler/views.py:82
+#: scheduler/views.py:92
msgid "Add Time Interval"
msgstr "Añadir Intervalo de Tiempo"
-#: scheduler/views.py:92
+#: scheduler/views.py:102
msgid "Time Interval saved successfully."
msgstr "Intervalo de tiempo guardado con éxito."
-#: scheduler/views.py:115
+#: scheduler/views.py:125
msgid "Time Interval deleted successfully."
msgstr "Intervalo de tiempo eliminado con éxito."
-#: scheduler/views.py:120
+#: scheduler/views.py:130
msgid "Delete Time Interval"
msgstr "Eliminar Intervalo de Tiempo"
-#: scheduler/views.py:122
+#: scheduler/views.py:132
msgid "Are you sure you want to delete this time interval?"
msgstr "¿Está seguro de que desea eliminar este intervalo de tiempo?"
@@ -1014,6 +1064,7 @@ msgid "Login again"
msgstr "Iniciar sesión de nuevo"
#: templates/cluster/workers_list.html:9 templates/dns/static_host_list.html:72
+#: templates/scheduler/scheduleprofile_form.html:82
#: templates/template_parts/base_sidebar.html:13 vpn_invite/forms.py:78
#: vpn_invite/forms.py:79 vpn_invite/forms.py:80 vpn_invite/forms.py:81
#: vpn_invite/forms.py:82
@@ -1050,8 +1101,8 @@ msgstr "Bloqueo de IP habilitado"
#: templates/cluster/workers_list.html:47
#: templates/cluster/workers_list.html:54
-#: templates/wireguard/wireguard_manage_peer.html:56
-#: templates/wireguard/wireguard_manage_peer.html:65
+#: templates/wireguard/wireguard_manage_peer.html:112
+#: templates/wireguard/wireguard_manage_peer.html:121
msgid "Not set"
msgstr "No establecido"
@@ -1066,7 +1117,7 @@ msgstr "Visto por última vez hace más de 10 minutos o nunca visto."
#: templates/cluster/workers_list.html:77
#: templates/dns/static_host_list.html:74
#: templates/routing_templates/list.html:29
-#: templates/scheduler/scheduleprofile_form.html:108
+#: templates/scheduler/scheduleprofile_form.html:123
#: templates/scheduler/scheduleprofile_list.html:25
#: templates/user_manager/list.html:53
#: templates/user_manager/peer_group_list.html:35
@@ -1159,7 +1210,7 @@ msgstr "Lo entiendo"
msgid "Clear"
msgstr "Limpiar"
-#: templates/console/console.html:27
+#: templates/console/console.html:28
msgid "Destination Hostname or IP Address"
msgstr "Nombre de host o IP de destino"
@@ -1444,6 +1495,7 @@ msgstr "Tipo de destino"
#: templates/firewall/manage_redirect_rule.html:42
#: templates/firewall/manage_redirect_rule.html:48
+#: templates/scheduler/scheduleprofile_form.html:159
#: templates/vpn_invite/invite_settings.html:17 user_manager/forms.py:178
msgid "Peer"
msgstr "Peer"
@@ -1540,7 +1592,7 @@ msgid "Confirm Delete"
msgstr "Confirmar Eliminación"
#: templates/generic_delete_confirmation.html:19
-#: templates/scheduler/scheduleprofile_form.html:137
+#: templates/scheduler/scheduleprofile_form.html:203
msgid "Cancel"
msgstr "Cancelar"
@@ -1558,31 +1610,87 @@ msgstr "Visualización de Programación"
#: templates/scheduler/scheduleprofile_form.html:70
#: templates/wireguard/apply_route_template.html:44
+#: templates/wireguard/wireguard_manage_peer.html:36
msgid "Active"
msgstr "Activo"
#: templates/scheduler/scheduleprofile_form.html:71
+#: templates/scheduler/scheduleprofile_form.html:82
msgid "Inactive"
msgstr "Inactivo"
-#: templates/scheduler/scheduleprofile_form.html:82
+#: templates/scheduler/scheduleprofile_form.html:78
+#, fuzzy
+#| msgid "Current Active Template:"
+msgid "Current time"
+msgstr "Plantilla Activa Actual:"
+
+#: templates/scheduler/scheduleprofile_form.html:79
+msgid "Becomes active at"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:80
+msgid "Becomes inactive at"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:97
msgid "Time Intervals"
msgstr "Intervalos de Tiempo"
-#: templates/scheduler/scheduleprofile_form.html:85
+#: templates/scheduler/scheduleprofile_form.html:100
msgid "Add Interval"
msgstr "Añadir Intervalo"
-#: templates/scheduler/scheduleprofile_form.html:96
+#: templates/scheduler/scheduleprofile_form.html:111
#: templates/scheduler/scheduleprofile_list.html:15
#: templates/wireguard/apply_route_template.html:28
msgid "Actions"
msgstr "Acciones"
-#: templates/scheduler/scheduleprofile_form.html:120
+#: templates/scheduler/scheduleprofile_form.html:135
msgid "No time intervals found."
msgstr "No se encontraron intervalos de tiempo."
+#: templates/scheduler/scheduleprofile_form.html:152
+msgid "Linked Peers (Debug)"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:160
+#, fuzzy
+#| msgid "Disabled Peers"
+msgid "Disabled by Schedule"
+msgstr "Peers deshabilitados"
+
+#: templates/scheduler/scheduleprofile_form.html:161
+#, fuzzy
+#| msgid "Restart Enabled"
+msgid "Next Enable"
+msgstr "Reinicio habilitado"
+
+#: templates/scheduler/scheduleprofile_form.html:162
+#, fuzzy
+#| msgid "Disabled"
+msgid "Next Disable"
+msgstr "Deshabilitado"
+
+#: templates/scheduler/scheduleprofile_form.html:175
+msgid "Yes"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:177
+msgid "No"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:185
+msgid "No peers linked to this profile."
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:207
+#, fuzzy
+#| msgid "Show extras"
+msgid "Show Peers"
+msgstr "Mostrar extras"
+
#: templates/scheduler/scheduleprofile_list.html:7
msgid "Schedule Profiles"
msgstr "Perfiles de Programación"
@@ -1631,20 +1739,20 @@ msgstr "Actualizar y reiniciar servicio"
msgid "Update and reload service"
msgstr "Actualizar y recargar servicio"
-#: templates/template_parts/base_sidebar.html:59 user_manager/views.py:74
+#: templates/template_parts/base_sidebar.html:32
+msgid "Scheduler"
+msgstr "Programador"
+
+#: templates/template_parts/base_sidebar.html:79 user_manager/views.py:74
msgid "User Manager"
msgstr "Gestión de usuarios"
-#: templates/template_parts/base_sidebar.html:88
+#: templates/template_parts/base_sidebar.html:98
#: templates/wireguard/peer_list/peer_preview_modal.html:133
#: vpn_invite/views.py:37
msgid "VPN Invite"
msgstr "Invitación VPN"
-#: templates/template_parts/base_sidebar.html:107
-msgid "Scheduler"
-msgstr "Programador"
-
#: templates/user_manager/list.html:9 user_manager/forms.py:20
msgid "User Level"
msgstr "Nivel de acceso"
@@ -1722,7 +1830,7 @@ msgstr "Configuración de correo"
msgid "Invite Settings"
msgstr "Configuración de invitación"
-#: templates/wireguard/apply_route_template.html:8 wireguard_peer/views.py:390
+#: templates/wireguard/apply_route_template.html:8 wireguard_peer/views.py:400
msgid "Apply Route Template"
msgstr "Aplicar Plantilla de Enrutamiento"
@@ -1766,7 +1874,7 @@ msgstr "Transferencia"
#: templates/wireguard/peer_list/peer_data.html:44
#: templates/wireguard/peer_list/script_wireguard_status_update.html:146
-#: wireguard_peer/views.py:112
+#: wireguard_peer/views.py:115
msgid "Primary Server"
msgstr "Servidor primario"
@@ -1786,12 +1894,12 @@ msgid "Allowed IPs"
msgstr "IPs permitidas"
#: templates/wireguard/peer_list/peer_preview_modal.html:45
-#: templates/wireguard/wireguard_manage_peer.html:79
+#: templates/wireguard/wireguard_manage_peer.html:135
msgid "Peer Traffic"
msgstr "Tráfico del peer"
#: templates/wireguard/peer_list/peer_preview_modal.html:61
-#: templates/wireguard/wireguard_manage_peer.html:96
+#: templates/wireguard/wireguard_manage_peer.html:152
msgid "No traffic history, please wait a few minutes"
msgstr "Sin historial de tráfico, espera unos minutos"
@@ -1947,7 +2055,7 @@ msgstr ""
"indicar un IP solapada o un archivo desactualizado."
#: templates/wireguard/server_detail.html:17
-#: templates/wireguard/wireguard_manage_peer.html:48 wireguard/forms.py:18
+#: templates/wireguard/wireguard_manage_peer.html:104 wireguard/forms.py:18
#: wireguard_peer/forms.py:52
msgid "Public Key"
msgstr "Clave pública"
@@ -1991,8 +2099,8 @@ msgid "Enter Allowed IP"
msgstr "Ingresar IP permitida"
#: templates/wireguard/wireguard_manage_ip.html:34
-#: templates/wireguard/wireguard_manage_peer.html:131
-#: templates/wireguard/wireguard_manage_peer.html:220
+#: templates/wireguard/wireguard_manage_peer.html:187
+#: templates/wireguard/wireguard_manage_peer.html:276
#: wireguard_peer/forms.py:71
msgid "Priority"
msgstr "Prioridad"
@@ -2005,65 +2113,122 @@ msgstr "Por favor escribe \\\"delete\\\" para eliminar esta IP."
msgid "Peer Configuration"
msgstr "Configuración de peer"
-#: templates/wireguard/wireguard_manage_peer.html:27 wireguard_peer/forms.py:41
+#: templates/wireguard/wireguard_manage_peer.html:27
+#, fuzzy
+#| msgid "Packet State"
+msgid "Peer State"
+msgstr "Estado del paquete"
+
+#: templates/wireguard/wireguard_manage_peer.html:31
+#, fuzzy
+#| msgid "Suspend"
+msgid "Suspended"
+msgstr "Suspender"
+
+#: templates/wireguard/wireguard_manage_peer.html:40
+#, fuzzy
+#| msgid "Schedule"
+msgid "Scheduled suspend"
+msgstr "Programar"
+
+#: templates/wireguard/wireguard_manage_peer.html:43
+msgid "Scheduled unsuspend"
+msgstr ""
+
+#: templates/wireguard/wireguard_manage_peer.html:54
+#, fuzzy
+#| msgid "Clear Schedule"
+msgid "Peer Schedule"
+msgstr "Limpiar programación"
+
+#: templates/wireguard/wireguard_manage_peer.html:60
+#, fuzzy
+#| msgid "Disabled Peers"
+msgid "Disabled by schedule"
+msgstr "Peers deshabilitados"
+
+#: templates/wireguard/wireguard_manage_peer.html:62
+#, fuzzy
+#| msgid "Restart Enabled"
+msgid "Next enable"
+msgstr "Reinicio habilitado"
+
+#: templates/wireguard/wireguard_manage_peer.html:65
+#, fuzzy
+#| msgid "Enabled Peers"
+msgid "Enabled by schedule"
+msgstr "Peers habilitados"
+
+#: templates/wireguard/wireguard_manage_peer.html:67
+#, fuzzy
+#| msgid "Disabled"
+msgid "Next disable"
+msgstr "Deshabilitado"
+
+#: templates/wireguard/wireguard_manage_peer.html:71
+msgid "No profile associated"
+msgstr ""
+
+#: templates/wireguard/wireguard_manage_peer.html:83 wireguard_peer/forms.py:41
msgid "Persistent Keepalive"
msgstr "Keepalive persistente"
-#: templates/wireguard/wireguard_manage_peer.html:40
+#: templates/wireguard/wireguard_manage_peer.html:96
msgid "Keys"
msgstr "Claves"
-#: templates/wireguard/wireguard_manage_peer.html:51 wireguard/forms.py:17
+#: templates/wireguard/wireguard_manage_peer.html:107 wireguard/forms.py:17
#: wireguard_peer/forms.py:53
msgid "Private Key"
msgstr "Clave privada"
-#: templates/wireguard/wireguard_manage_peer.html:60 wireguard_peer/forms.py:54
+#: templates/wireguard/wireguard_manage_peer.html:116
+#: wireguard_peer/forms.py:54
msgid "Pre-Shared Key"
msgstr "Clave precompartida"
-#: templates/wireguard/wireguard_manage_peer.html:110
+#: templates/wireguard/wireguard_manage_peer.html:166
msgid "AllowedIPs at Peer section of wg"
msgstr "AllowedIPs en sección peer de wg"
-#: templates/wireguard/wireguard_manage_peer.html:111
+#: templates/wireguard/wireguard_manage_peer.html:167
msgid "Peer IP Addresses and networks"
msgstr "IPs y redes del peer"
-#: templates/wireguard/wireguard_manage_peer.html:115
+#: templates/wireguard/wireguard_manage_peer.html:171
msgid "Add IP Address"
msgstr "Añadir IP"
-#: templates/wireguard/wireguard_manage_peer.html:129
-#: templates/wireguard/wireguard_manage_peer.html:218
+#: templates/wireguard/wireguard_manage_peer.html:185
+#: templates/wireguard/wireguard_manage_peer.html:274
msgid "Main ip address"
msgstr "IP principal"
-#: templates/wireguard/wireguard_manage_peer.html:144
+#: templates/wireguard/wireguard_manage_peer.html:200
msgid "AllowedIPs at client configuration file"
msgstr "AllowedIPs en el archivo de configuración del cliente"
-#: templates/wireguard/wireguard_manage_peer.html:145
+#: templates/wireguard/wireguard_manage_peer.html:201
msgid "Client Routing"
msgstr "Enrutamiento del Cliente"
-#: templates/wireguard/wireguard_manage_peer.html:150
+#: templates/wireguard/wireguard_manage_peer.html:206
msgid "Apply template"
msgstr "Aplicar plantilla"
-#: templates/wireguard/wireguard_manage_peer.html:154
+#: templates/wireguard/wireguard_manage_peer.html:210
msgid "Add Client route"
msgstr "Añadir ruta cliente"
-#: templates/wireguard/wireguard_manage_peer.html:167
+#: templates/wireguard/wireguard_manage_peer.html:223
msgid "Routing Template"
msgstr "Plantilla de Enrutamiento"
-#: templates/wireguard/wireguard_manage_peer.html:180
+#: templates/wireguard/wireguard_manage_peer.html:236
msgid "Template Route"
msgstr "Ruta de la plantilla"
-#: templates/wireguard/wireguard_manage_peer.html:191
+#: templates/wireguard/wireguard_manage_peer.html:247
msgid ""
"The client is not configured to use the VPN as the default gateway."
"\\n\\nOnly the specific networks listed below are routed through the VPN."
@@ -2076,7 +2241,7 @@ msgstr ""
"\\n\\nNota: Estas rutas no se envían automáticamente al cliente. Debes "
"actualizar manualmente su archivo de configuración para reflejarlas."
-#: templates/wireguard/wireguard_manage_peer.html:194
+#: templates/wireguard/wireguard_manage_peer.html:250
msgid ""
"The client is configured to use the VPN as the default gateway. \\n\\nThis "
"setting routes all client internet traffic through the VPN, enhancing "
@@ -2086,27 +2251,27 @@ msgstr ""
"\\n\\nEsta opción enruta todo el tráfico de Internet del cliente por la VPN, "
"mejorando privacidad y seguridad."
-#: templates/wireguard/wireguard_manage_peer.html:202
+#: templates/wireguard/wireguard_manage_peer.html:258
msgid "default route"
msgstr "ruta predeterminada"
-#: templates/wireguard/wireguard_manage_peer.html:236
+#: templates/wireguard/wireguard_manage_peer.html:292
msgid "Peer List"
msgstr "Lista de Peers"
-#: templates/wireguard/wireguard_manage_peer.html:240
+#: templates/wireguard/wireguard_manage_peer.html:296
msgid "Reactivate"
msgstr "Reactivar"
-#: templates/wireguard/wireguard_manage_peer.html:242
+#: templates/wireguard/wireguard_manage_peer.html:298
msgid "Suspend"
msgstr "Suspender"
-#: templates/wireguard/wireguard_manage_peer.html:246
+#: templates/wireguard/wireguard_manage_peer.html:302
msgid "Delete Peer"
msgstr "Eliminar peer"
-#: templates/wireguard/wireguard_manage_peer.html:256
+#: templates/wireguard/wireguard_manage_peer.html:312
msgid "Please type \\\"delete\\\" to remove peer configuration."
msgstr ""
"Por favor escribe \\\"delete\\\" para eliminar la configuración del peer."
@@ -2758,7 +2923,9 @@ msgstr "Dirección IP interna"
#: wireguard/forms.py:117
msgid "Peer List Refresh Interval must be at least 5 seconds"
-msgstr "El intervalo de actualización de la lista de peers debe ser de al menos 5 segundos"
+msgstr ""
+"El intervalo de actualización de la lista de peers debe ser de al menos 5 "
+"segundos"
#: wireguard/forms.py:120
msgid "Invalid hostname or IP Address"
@@ -2867,15 +3034,15 @@ msgstr "Reactivar ahora"
msgid "Suspend now"
msgstr "Suspender ahora"
-#: wireguard_peer/forms.py:140
+#: wireguard_peer/forms.py:139
msgid "Schedule"
msgstr "Programar"
-#: wireguard_peer/forms.py:144
+#: wireguard_peer/forms.py:143
msgid "Clear Schedule"
msgstr "Limpiar programación"
-#: wireguard_peer/forms.py:182
+#: wireguard_peer/forms.py:181
msgid ""
"The difference between suspend and unsuspend times must be at least 5 "
"minutes."
@@ -2883,72 +3050,72 @@ msgstr ""
"La diferencia entre el horario de suspensión y el de reactivación debe ser "
"de al menos 5 minutos."
-#: wireguard_peer/forms.py:186
+#: wireguard_peer/forms.py:185
msgid "Scheduled suspension time must be at least 10 minutes in the future."
msgstr ""
"La programación de la suspensión debe ser al menos 10 minutos en el futuro."
-#: wireguard_peer/forms.py:189
+#: wireguard_peer/forms.py:188
msgid "Scheduled unsuspension time must be at least 10 minutes in the future."
msgstr ""
"La programación de la reactivación debe ser al menos 10 minutos en el futuro."
-#: wireguard_peer/views.py:58
+#: wireguard_peer/views.py:61
msgid "Disabled WireGuard Peer List"
msgstr "Lista de peers de WireGuard desactivados"
-#: wireguard_peer/views.py:61
+#: wireguard_peer/views.py:64
msgid "WireGuard Peer List"
msgstr "Lista de peers WireGuard"
-#: wireguard_peer/views.py:198
+#: wireguard_peer/views.py:201
msgid "Peer created|Peer created successfully."
msgstr "Peer creado|Peer creado correctamente."
-#: wireguard_peer/views.py:203
+#: wireguard_peer/views.py:206
msgid "Error creating peer|No available IP address found for peer creation."
msgstr "Error al crear peer|No hay IP disponible para asignar."
-#: wireguard_peer/views.py:226
+#: wireguard_peer/views.py:229
msgid "Peer deleted|Peer deleted successfully."
msgstr "Peer eliminado|Peer eliminado correctamente."
-#: wireguard_peer/views.py:229
+#: wireguard_peer/views.py:232
msgid ""
"Error deleting peer|Invalid confirmation message. Type \"delete\" to confirm."
msgstr ""
"Error al eliminar peer|Confirmación inválida. Escribe \"delete\" para "
"confirmar."
-#: wireguard_peer/views.py:231
+#: wireguard_peer/views.py:234
msgid "Peer Configuration: "
msgstr "Configuración de peer: "
-#: wireguard_peer/views.py:269
+#: wireguard_peer/views.py:279
msgid "Peer updated|Peer updated successfully."
msgstr "Peer actualizado|Peer actualizado correctamente."
-#: wireguard_peer/views.py:272
+#: wireguard_peer/views.py:282
msgid "Edit Peer"
msgstr "Editar Usuario"
-#: wireguard_peer/views.py:274
+#: wireguard_peer/views.py:284
msgid "Edit Peer Name"
msgstr "Editar Nombre de Peer"
-#: wireguard_peer/views.py:276
+#: wireguard_peer/views.py:286
msgid "Edit Keepalive"
msgstr "Editar Keepalive"
-#: wireguard_peer/views.py:278
+#: wireguard_peer/views.py:288
msgid "Edit Keys"
msgstr "Editar Chaves"
-#: wireguard_peer/views.py:310
+#: wireguard_peer/views.py:320
msgid "IP address deleted|IP address deleted successfully."
msgstr "IP eliminada|IP eliminada correctamente."
-#: wireguard_peer/views.py:315
+#: wireguard_peer/views.py:325
msgid ""
"Error deleting IP address|Invalid confirmation message. Type \"delete\" to "
"confirm."
@@ -2956,27 +3123,27 @@ msgstr ""
"Error al eliminar IP|Confirmación inválida. Escribe \"delete\" para "
"confirmar."
-#: wireguard_peer/views.py:320
+#: wireguard_peer/views.py:330
msgid "Manage client route"
msgstr "Gestionar ruta cliente"
-#: wireguard_peer/views.py:322
+#: wireguard_peer/views.py:332
msgid "Manage IP address or Network"
msgstr "Gestionar IP o red"
-#: wireguard_peer/views.py:335
+#: wireguard_peer/views.py:345
msgid "IP address updated|IP address updated successfully."
msgstr "IP actualizada|IP actualizada correctamente."
-#: wireguard_peer/views.py:337
+#: wireguard_peer/views.py:347
msgid "IP address added|IP address added successfully."
msgstr "IP añadida|IP añadida correctamente."
-#: wireguard_peer/views.py:369
+#: wireguard_peer/views.py:379
msgid "Route template unlinked successfully."
msgstr "Plantilla de enrutamiento desvinculada exitosamente."
-#: wireguard_peer/views.py:379
+#: wireguard_peer/views.py:389
msgid ""
"Cannot apply template: This template does not allow custom routes, but the "
"peer has custom client routes defined."
@@ -2984,15 +3151,15 @@ msgstr ""
"No se puede aplicar la plantilla: esta plantilla no permite rutas "
"personalizadas, pero el peer tiene rutas de cliente personalizadas definidas."
-#: wireguard_peer/views.py:386
+#: wireguard_peer/views.py:396
msgid "Route template applied successfully."
msgstr "Plantilla de enrutamiento aplicada exitosamente."
-#: wireguard_peer/views.py:419
+#: wireguard_peer/views.py:429
msgid "Peer suspension/unsuspension scheduled successfully."
msgstr "Suspensión/reactivación programada con éxito."
-#: wireguard_peer/views.py:423
+#: wireguard_peer/views.py:431
msgid ""
"Error scheduling peer suspension/unsuspension. Please correct the errors "
"below."
@@ -3000,27 +3167,47 @@ msgstr ""
"Error al programar la suspensión/reactivación del peer. Por favor, corrija "
"los errores abajo."
-#: wireguard_peer/views.py:430
+#: wireguard_peer/views.py:438
msgid "Schedule cleared successfully."
msgstr "Programación limpiada con éxito."
-#: wireguard_peer/views.py:438
+#: wireguard_peer/views.py:452
msgid "Peer suspended successfully."
msgstr "Peer suspendido con éxito."
-#: wireguard_peer/views.py:446
+#: wireguard_peer/views.py:454
+msgid "Peer suspended, but failed to reload WireGuard interface: "
+msgstr ""
+
+#: wireguard_peer/views.py:464
msgid "Peer reactivated successfully."
msgstr "Peer reactivado con éxito."
-#: wireguard_peer/views.py:450
+#: wireguard_peer/views.py:466
+msgid "Peer reactivated, but failed to reload WireGuard interface: "
+msgstr ""
+
+#: wireguard_peer/views.py:469
msgid "Invalid action."
msgstr "Acción inválida."
-#: wireguard_peer/views.py:455
+#: wireguard_peer/views.py:474
msgid "Suspend / Reactivate Peer"
msgstr "Suspender / Reactivar Peer"
-#: wireguard_tools/views.py:181
+#: wireguard_peer/views.py:497
+#, fuzzy
+#| msgid "Schedule Profile deleted successfully."
+msgid "Peer scheduling profile updated successfully."
+msgstr "Perfil de programación eliminado con éxito."
+
+#: wireguard_peer/views.py:503
+#, fuzzy
+#| msgid "Delete Schedule Profile"
+msgid "Manage Peer Schedule Profile"
+msgstr "Eliminar Perfil de Programación"
+
+#: wireguard_tools/views.py:237
msgid ""
"Export successful!|WireGuard configuration files have been exported to /etc/"
"wireguard/."
@@ -3028,7 +3215,7 @@ msgstr ""
"Exportación exitosa!|Los archivos de configuración se exportaron a /etc/"
"wireguard/."
-#: wireguard_tools/views.py:183
+#: wireguard_tools/views.py:239
msgid ""
"Export successful!|WireGuard configuration files have been exported to /etc/"
"wireguard/. Don't forget to restart the interfaces."
@@ -3036,19 +3223,19 @@ msgstr ""
"Exportación exitosa!|Los archivos de configuración se exportaron a /etc/"
"wireguard/. No olvides reiniciar las interfaces."
-#: wireguard_tools/views.py:285
+#: wireguard_tools/views.py:341
msgid "Error reloading"
msgstr "Error al recargar"
-#: wireguard_tools/views.py:297
+#: wireguard_tools/views.py:353
msgid "Error stopping"
msgstr "Error al detener"
-#: wireguard_tools/views.py:302
+#: wireguard_tools/views.py:358
msgid "Error starting"
msgstr "Error al iniciar"
-#: wireguard_tools/views.py:309
+#: wireguard_tools/views.py:365
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, "
@@ -3057,19 +3244,19 @@ msgstr ""
"ADVERTENCIA|La interfaz se recargó, no reinició. Verifica que los peers "
"funcionen correctamente. Si hay problemas, repórtalos."
-#: wireguard_tools/views.py:310
+#: wireguard_tools/views.py:366
msgid "WireGuard reloaded|The WireGuard service has been reloaded."
msgstr "WireGuard recargado|El servicio WireGuard se ha recargado."
-#: wireguard_tools/views.py:312
+#: wireguard_tools/views.py:368
msgid "WireGuard restarted|The WireGuard service has been restarted."
msgstr "WireGuard reiniciado|El servicio WireGuard se ha reiniciado."
-#: wireguard_tools/views.py:315
+#: wireguard_tools/views.py:371
msgid "Errors encountered|Error processing one or more interfaces."
msgstr "Errores encontrados|Error al procesar una o más interfaces."
-#: wireguard_tools/views.py:318
+#: wireguard_tools/views.py:374
msgid "No interfaces found|No WireGuard interfaces were found to process."
msgstr ""
"No se encontraron interfaces|No hay interfaces WireGuard para procesar."
diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po
index eaa08ac..988f335 100644
--- a/locale/fr/LC_MESSAGES/django.po
+++ b/locale/fr/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2026-02-03 14:49-0300\n"
+"POT-Creation-Date: 2026-02-09 13:51-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -73,7 +73,8 @@ msgstr "Jeton"
#: templates/wireguard/peer_list/peer_preview_modal.html:79
#: templates/wireguard/wireguard_manage_ip.html:42 user_manager/forms.py:49
#: user_manager/forms.py:180 vpn_invite/forms.py:192 vpn_invite/forms.py:326
-#: wireguard/forms.py:51 wireguard_peer/forms.py:27 wireguard_peer/forms.py:157
+#: wireguard/forms.py:51 wireguard_peer/forms.py:27 wireguard_peer/forms.py:156
+#: wireguard_peer/forms.py:210
msgid "Back"
msgstr "Retour"
@@ -81,7 +82,7 @@ msgstr "Retour"
#: routing_templates/forms.py:37
#: templates/firewall/manage_firewall_rule.html:382
#: templates/firewall/manage_redirect_rule.html:86
-#: templates/scheduler/scheduleprofile_form.html:112
+#: templates/scheduler/scheduleprofile_form.html:127
#: templates/scheduler/scheduleprofile_list.html:29
#: templates/wireguard/peer_list/peer_preview_modal.html:109
#: templates/wireguard/wireguard_manage_ip.html:43 user_manager/forms.py:48
@@ -90,14 +91,15 @@ msgid "Delete"
msgstr "Supprimer"
#: cluster/forms.py:67 cluster/forms.py:124 dns/forms.py:37 dns/forms.py:83
-#: dns/forms.py:134 routing_templates/forms.py:70 scheduler/forms.py:61
+#: dns/forms.py:134 routing_templates/forms.py:70 scheduler/forms.py:102
#: templates/firewall/manage_firewall_rule.html:379
#: templates/firewall/manage_firewall_settings.html:59
#: templates/firewall/manage_redirect_rule.html:84
-#: templates/scheduler/scheduleprofile_form.html:134
+#: templates/scheduler/scheduleprofile_form.html:200
#: templates/wireguard/wireguard_manage_ip.html:41 user_manager/forms.py:98
#: user_manager/forms.py:205 vpn_invite/forms.py:191 vpn_invite/forms.py:325
#: wireguard/forms.py:100 wireguard_peer/forms.py:26
+#: wireguard_peer/forms.py:205
msgid "Save"
msgstr "Enregistrer"
@@ -167,7 +169,7 @@ msgstr "La mise à jour du worker est requise."
msgid "Access Denied"
msgstr "Accès refusé"
-#: cluster/views.py:21 templates/template_parts/base_sidebar.html:97
+#: cluster/views.py:21 templates/template_parts/base_sidebar.html:107
msgid "Cluster"
msgstr "Cluster"
@@ -288,46 +290,66 @@ msgstr ""
"combinaison.\n"
" "
-#: console/views.py:25 console/views.py:57 user_manager/forms.py:16
+#: console/views.py:27 console/views.py:67 user_manager/forms.py:16
msgid "Console"
msgstr "Console"
-#: console/views.py:27
+#: console/views.py:29
msgid "iptables list"
msgstr "liste iptables"
-#: console/views.py:33
+#: console/views.py:35
msgid "running processes"
msgstr "processus en cours"
-#: console/views.py:36
+#: console/views.py:38
msgid "WireGuard show"
msgstr "état WireGuard"
-#: console/views.py:39
+#: console/views.py:40
+msgid "Enhanced filter is enabled. This command is not available."
+msgstr "Le filtre avancé est activé. Cette commande n’est pas disponible."
+
+#: console/views.py:46
msgid "Memory usage"
msgstr "Utilisation de la mémoire"
-#: console/views.py:42
+#: console/views.py:49
msgid "Routing table"
msgstr "Table de routage"
-#: console/views.py:54
+#: console/views.py:61
msgid "DNS container test script"
msgstr "Script de test du conteneur DNS"
-#: console/views.py:57
+#: console/views.py:64
+#, fuzzy
+#| msgid "WireGuard Status"
+msgid "Flush Wireguard status cache"
+msgstr "Statut WireGuard"
+
+#: console/views.py:67
msgid "Invalid command"
msgstr "Commande invalide"
-#: console/views.py:64
+#: console/views.py:78
+#, fuzzy
+#| msgid "Cluster mode requires WireGuard status cache to be enabled."
+msgid "Flushed WireGuard status cache for worker: "
+msgstr ""
+"Le mode cluster nécessite que le cache d'état de WireGuard soit activé."
+
+#: console/views.py:83
+#, fuzzy
+#| msgid "Cluster mode requires WireGuard status cache to be enabled."
+msgid "Flushed WireGuard status cache entries: "
+msgstr ""
+"Le mode cluster nécessite que le cache d'état de WireGuard soit activé."
+
+#: console/views.py:87
msgid "Invalid target"
msgstr "Cible invalide"
-#: console/views.py:69
-msgid "Enhanced filter is enabled. This command is not available."
-msgstr "Le filtre avancé est activé. Cette commande n’est pas disponible."
-
#: dns/forms.py:22 wireguard/forms.py:24
msgid "Primary DNS"
msgstr "DNS primaire"
@@ -781,7 +803,7 @@ msgstr "Routes de Tous les Pairs"
msgid "One route per line in CIDR notation."
msgstr "Une route par ligne en notation CIDR."
-#: routing_templates/views.py:16 templates/template_parts/base_sidebar.html:79
+#: routing_templates/views.py:16 templates/template_parts/base_sidebar.html:42
msgid "Routing Templates"
msgstr "Modèles de Routage"
@@ -882,100 +904,126 @@ msgstr ""
"cette option peut générer un grand nombre de règles de pare-feu.\n"
" "
-#: scheduler/forms.py:14
+#: scheduler/forms.py:17
msgid "Profile Name"
msgstr "Nom du Profil"
-#: scheduler/forms.py:38 templates/scheduler/scheduleprofile_form.html:92
+#: scheduler/forms.py:74 templates/scheduler/scheduleprofile_form.html:107
msgid "Start Day"
msgstr "Jour de Début"
-#: scheduler/forms.py:39 templates/scheduler/scheduleprofile_form.html:93
+#: scheduler/forms.py:75 templates/scheduler/scheduleprofile_form.html:108
msgid "Start Time"
msgstr "Heure de Début"
-#: scheduler/forms.py:40 templates/scheduler/scheduleprofile_form.html:94
+#: scheduler/forms.py:76 templates/scheduler/scheduleprofile_form.html:109
msgid "End Day"
msgstr "Jour de Fin"
-#: scheduler/forms.py:41 templates/scheduler/scheduleprofile_form.html:95
+#: scheduler/forms.py:77 templates/scheduler/scheduleprofile_form.html:110
msgid "End Time"
msgstr "Heure de Fin"
-#: scheduler/models.py:9
+#: scheduler/forms.py:122
+msgid "Unable to validate overlaps: schedule profile is missing."
+msgstr ""
+
+#: scheduler/forms.py:129 scheduler/forms.py:132
+#, fuzzy
+#| msgid ""
+#| "The difference between suspend and unsuspend times must be at least 5 "
+#| "minutes."
+msgid "The minimum duration between start and end must be at least 10 minutes."
+msgstr ""
+"La différence entre les heures de suspension et de réactivation doit être "
+"d'au moins 5 minutes."
+
+#: scheduler/forms.py:150
+#, python-format
+msgid "This time slot overlaps with an existing slot (%(start)s → %(end)s)."
+msgstr ""
+
+#: scheduler/forms.py:160
+#, fuzzy
+#| msgid "Scheduled suspension time must be at least 10 minutes in the future."
+msgid "There must be at least 10 minutes between time slots."
+msgstr ""
+"L'heure de suspension programmée doit être au moins 10 minutes dans le futur."
+
+#: scheduler/models.py:11
msgid "Monday"
msgstr "Lundi"
-#: scheduler/models.py:10
+#: scheduler/models.py:12
msgid "Tuesday"
msgstr "Mardi"
-#: scheduler/models.py:11
+#: scheduler/models.py:13
msgid "Wednesday"
msgstr "Mercredi"
-#: scheduler/models.py:12
+#: scheduler/models.py:14
msgid "Thursday"
msgstr "Jeudi"
-#: scheduler/models.py:13
+#: scheduler/models.py:15
msgid "Friday"
msgstr "Vendredi"
-#: scheduler/models.py:14
+#: scheduler/models.py:16
msgid "Saturday"
msgstr "Samedi"
-#: scheduler/models.py:15
+#: scheduler/models.py:17
msgid "Sunday"
msgstr "Dimanche"
-#: scheduler/views.py:26
+#: scheduler/views.py:27
msgid "Edit Schedule Profile"
msgstr "Modifier le Profil de Planification"
-#: scheduler/views.py:30
+#: scheduler/views.py:31
msgid "Create Schedule Profile"
msgstr "Créer un Profil de Planification"
-#: scheduler/views.py:37
+#: scheduler/views.py:44
msgid "Schedule Profile saved successfully."
msgstr "Profil de planification enregistré avec succès."
-#: scheduler/views.py:58
+#: scheduler/views.py:68
msgid "Schedule Profile deleted successfully."
msgstr "Profil de planification supprimé avec succès."
-#: scheduler/views.py:63
+#: scheduler/views.py:73
msgid "Delete Schedule Profile"
msgstr "Supprimer le Profil de Planification"
-#: scheduler/views.py:65
+#: scheduler/views.py:75
#, python-format
msgid "Are you sure you want to delete the profile \"%(name)s\"?"
msgstr "Êtes-vous sûr de vouloir supprimer le profil \"%(name)s\" ?"
-#: scheduler/views.py:78
+#: scheduler/views.py:88
msgid "Edit Time Interval"
msgstr "Modifier l'Intervalle de Temps"
-#: scheduler/views.py:82
+#: scheduler/views.py:92
msgid "Add Time Interval"
msgstr "Ajouter um Intervalle de Temps"
-#: scheduler/views.py:92
+#: scheduler/views.py:102
msgid "Time Interval saved successfully."
msgstr "Intervalle de temps enregistré avec succès."
-#: scheduler/views.py:115
+#: scheduler/views.py:125
msgid "Time Interval deleted successfully."
msgstr "Intervalle de temps supprimé avec succès."
-#: scheduler/views.py:120
+#: scheduler/views.py:130
msgid "Delete Time Interval"
msgstr "Supprimer l'Intervalle de Temps"
-#: scheduler/views.py:122
+#: scheduler/views.py:132
msgid "Are you sure you want to delete this time interval?"
msgstr "Êtes-vous sûr de vouloir supprimer cet intervalle de temps ?"
@@ -1014,6 +1062,7 @@ msgid "Login again"
msgstr "Se reconnecter"
#: templates/cluster/workers_list.html:9 templates/dns/static_host_list.html:72
+#: templates/scheduler/scheduleprofile_form.html:82
#: templates/template_parts/base_sidebar.html:13 vpn_invite/forms.py:78
#: vpn_invite/forms.py:79 vpn_invite/forms.py:80 vpn_invite/forms.py:81
#: vpn_invite/forms.py:82
@@ -1050,8 +1099,8 @@ msgstr "Verrouillage IP activé"
#: templates/cluster/workers_list.html:47
#: templates/cluster/workers_list.html:54
-#: templates/wireguard/wireguard_manage_peer.html:56
-#: templates/wireguard/wireguard_manage_peer.html:65
+#: templates/wireguard/wireguard_manage_peer.html:112
+#: templates/wireguard/wireguard_manage_peer.html:121
msgid "Not set"
msgstr "Non défini"
@@ -1066,7 +1115,7 @@ msgstr "Vu pour la dernière fois il y a plus de 10 minutes ou jamais vu."
#: templates/cluster/workers_list.html:77
#: templates/dns/static_host_list.html:74
#: templates/routing_templates/list.html:29
-#: templates/scheduler/scheduleprofile_form.html:108
+#: templates/scheduler/scheduleprofile_form.html:123
#: templates/scheduler/scheduleprofile_list.html:25
#: templates/user_manager/list.html:53
#: templates/user_manager/peer_group_list.html:35
@@ -1158,7 +1207,7 @@ msgstr "Je comprends"
msgid "Clear"
msgstr "Effacer"
-#: templates/console/console.html:27
+#: templates/console/console.html:28
msgid "Destination Hostname or IP Address"
msgstr "Nom d’hôte ou adresse IP de destination"
@@ -1443,6 +1492,7 @@ msgstr "Type de destination"
#: templates/firewall/manage_redirect_rule.html:42
#: templates/firewall/manage_redirect_rule.html:48
+#: templates/scheduler/scheduleprofile_form.html:159
#: templates/vpn_invite/invite_settings.html:17 user_manager/forms.py:178
msgid "Peer"
msgstr "Pair"
@@ -1541,7 +1591,7 @@ msgid "Confirm Delete"
msgstr "Confirmer la Suppression"
#: templates/generic_delete_confirmation.html:19
-#: templates/scheduler/scheduleprofile_form.html:137
+#: templates/scheduler/scheduleprofile_form.html:203
msgid "Cancel"
msgstr "Annuler"
@@ -1559,31 +1609,87 @@ msgstr "Visualisation de la planification"
#: templates/scheduler/scheduleprofile_form.html:70
#: templates/wireguard/apply_route_template.html:44
+#: templates/wireguard/wireguard_manage_peer.html:36
msgid "Active"
msgstr "Actif"
#: templates/scheduler/scheduleprofile_form.html:71
+#: templates/scheduler/scheduleprofile_form.html:82
msgid "Inactive"
msgstr "Inactif"
-#: templates/scheduler/scheduleprofile_form.html:82
+#: templates/scheduler/scheduleprofile_form.html:78
+#, fuzzy
+#| msgid "Current Active Template:"
+msgid "Current time"
+msgstr "Modèle actif actuel :"
+
+#: templates/scheduler/scheduleprofile_form.html:79
+msgid "Becomes active at"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:80
+msgid "Becomes inactive at"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:97
msgid "Time Intervals"
msgstr "Intervalles de Temps"
-#: templates/scheduler/scheduleprofile_form.html:85
+#: templates/scheduler/scheduleprofile_form.html:100
msgid "Add Interval"
msgstr "Ajouter um Intervalle"
-#: templates/scheduler/scheduleprofile_form.html:96
+#: templates/scheduler/scheduleprofile_form.html:111
#: templates/scheduler/scheduleprofile_list.html:15
#: templates/wireguard/apply_route_template.html:28
msgid "Actions"
msgstr "Actions"
-#: templates/scheduler/scheduleprofile_form.html:120
+#: templates/scheduler/scheduleprofile_form.html:135
msgid "No time intervals found."
msgstr "Aucun intervalle de temps trouvé."
+#: templates/scheduler/scheduleprofile_form.html:152
+msgid "Linked Peers (Debug)"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:160
+#, fuzzy
+#| msgid "Disabled Peers"
+msgid "Disabled by Schedule"
+msgstr "Peers désactivés"
+
+#: templates/scheduler/scheduleprofile_form.html:161
+#, fuzzy
+#| msgid "Restart Enabled"
+msgid "Next Enable"
+msgstr "Redémarrage autorisé"
+
+#: templates/scheduler/scheduleprofile_form.html:162
+#, fuzzy
+#| msgid "Disabled"
+msgid "Next Disable"
+msgstr "Désactivé"
+
+#: templates/scheduler/scheduleprofile_form.html:175
+msgid "Yes"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:177
+msgid "No"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:185
+msgid "No peers linked to this profile."
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:207
+#, fuzzy
+#| msgid "Show extras"
+msgid "Show Peers"
+msgstr "Afficher les extras"
+
#: templates/scheduler/scheduleprofile_list.html:7
msgid "Schedule Profiles"
msgstr "Profils de Planification"
@@ -1632,20 +1738,20 @@ msgstr "Mettre à jour et redémarrer le service"
msgid "Update and reload service"
msgstr "Mettre à jour et recharger le service"
-#: templates/template_parts/base_sidebar.html:59 user_manager/views.py:74
+#: templates/template_parts/base_sidebar.html:32
+msgid "Scheduler"
+msgstr "Planificateur"
+
+#: templates/template_parts/base_sidebar.html:79 user_manager/views.py:74
msgid "User Manager"
msgstr "Gestion des utilisateurs"
-#: templates/template_parts/base_sidebar.html:88
+#: templates/template_parts/base_sidebar.html:98
#: templates/wireguard/peer_list/peer_preview_modal.html:133
#: vpn_invite/views.py:37
msgid "VPN Invite"
msgstr "Invitation VPN"
-#: templates/template_parts/base_sidebar.html:107
-msgid "Scheduler"
-msgstr "Planificateur"
-
#: templates/user_manager/list.html:9 user_manager/forms.py:20
msgid "User Level"
msgstr "Niveau utilisateur"
@@ -1723,7 +1829,7 @@ msgstr "Paramètres e‑mail"
msgid "Invite Settings"
msgstr "Paramètres d’invitation"
-#: templates/wireguard/apply_route_template.html:8 wireguard_peer/views.py:390
+#: templates/wireguard/apply_route_template.html:8 wireguard_peer/views.py:400
msgid "Apply Route Template"
msgstr "Appliquer le modèle de routage"
@@ -1767,7 +1873,7 @@ msgstr "Transfert"
#: templates/wireguard/peer_list/peer_data.html:44
#: templates/wireguard/peer_list/script_wireguard_status_update.html:146
-#: wireguard_peer/views.py:112
+#: wireguard_peer/views.py:115
msgid "Primary Server"
msgstr "Serveur primaire"
@@ -1787,12 +1893,12 @@ msgid "Allowed IPs"
msgstr "IPs autorisées"
#: templates/wireguard/peer_list/peer_preview_modal.html:45
-#: templates/wireguard/wireguard_manage_peer.html:79
+#: templates/wireguard/wireguard_manage_peer.html:135
msgid "Peer Traffic"
msgstr "Trafic du peer"
#: templates/wireguard/peer_list/peer_preview_modal.html:61
-#: templates/wireguard/wireguard_manage_peer.html:96
+#: templates/wireguard/wireguard_manage_peer.html:152
msgid "No traffic history, please wait a few minutes"
msgstr "Aucun historique de trafic ; veuillez patienter quelques minutes"
@@ -1950,7 +2056,7 @@ msgstr ""
"est obsolète."
#: templates/wireguard/server_detail.html:17
-#: templates/wireguard/wireguard_manage_peer.html:48 wireguard/forms.py:18
+#: templates/wireguard/wireguard_manage_peer.html:104 wireguard/forms.py:18
#: wireguard_peer/forms.py:52
msgid "Public Key"
msgstr "Clé publique"
@@ -1994,8 +2100,8 @@ msgid "Enter Allowed IP"
msgstr "Saisir l’IP autorisée"
#: templates/wireguard/wireguard_manage_ip.html:34
-#: templates/wireguard/wireguard_manage_peer.html:131
-#: templates/wireguard/wireguard_manage_peer.html:220
+#: templates/wireguard/wireguard_manage_peer.html:187
+#: templates/wireguard/wireguard_manage_peer.html:276
#: wireguard_peer/forms.py:71
msgid "Priority"
msgstr "Priorité"
@@ -2008,65 +2114,122 @@ msgstr "Tapez \\\"delete\\\" pour supprimer cette adresse IP."
msgid "Peer Configuration"
msgstr "Configuration du peer"
-#: templates/wireguard/wireguard_manage_peer.html:27 wireguard_peer/forms.py:41
+#: templates/wireguard/wireguard_manage_peer.html:27
+#, fuzzy
+#| msgid "Packet State"
+msgid "Peer State"
+msgstr "État du paquet"
+
+#: templates/wireguard/wireguard_manage_peer.html:31
+#, fuzzy
+#| msgid "Suspend"
+msgid "Suspended"
+msgstr "Suspendre"
+
+#: templates/wireguard/wireguard_manage_peer.html:40
+#, fuzzy
+#| msgid "Schedule"
+msgid "Scheduled suspend"
+msgstr "Programmer"
+
+#: templates/wireguard/wireguard_manage_peer.html:43
+msgid "Scheduled unsuspend"
+msgstr ""
+
+#: templates/wireguard/wireguard_manage_peer.html:54
+#, fuzzy
+#| msgid "Clear Schedule"
+msgid "Peer Schedule"
+msgstr "Effacer la programmation"
+
+#: templates/wireguard/wireguard_manage_peer.html:60
+#, fuzzy
+#| msgid "Disabled Peers"
+msgid "Disabled by schedule"
+msgstr "Peers désactivés"
+
+#: templates/wireguard/wireguard_manage_peer.html:62
+#, fuzzy
+#| msgid "Restart Enabled"
+msgid "Next enable"
+msgstr "Redémarrage autorisé"
+
+#: templates/wireguard/wireguard_manage_peer.html:65
+#, fuzzy
+#| msgid "Enabled Peers"
+msgid "Enabled by schedule"
+msgstr "Peers activés"
+
+#: templates/wireguard/wireguard_manage_peer.html:67
+#, fuzzy
+#| msgid "Disabled"
+msgid "Next disable"
+msgstr "Désactivé"
+
+#: templates/wireguard/wireguard_manage_peer.html:71
+msgid "No profile associated"
+msgstr ""
+
+#: templates/wireguard/wireguard_manage_peer.html:83 wireguard_peer/forms.py:41
msgid "Persistent Keepalive"
msgstr "Keep‑alive persistant"
-#: templates/wireguard/wireguard_manage_peer.html:40
+#: templates/wireguard/wireguard_manage_peer.html:96
msgid "Keys"
msgstr "Clés"
-#: templates/wireguard/wireguard_manage_peer.html:51 wireguard/forms.py:17
+#: templates/wireguard/wireguard_manage_peer.html:107 wireguard/forms.py:17
#: wireguard_peer/forms.py:53
msgid "Private Key"
msgstr "Clé privée"
-#: templates/wireguard/wireguard_manage_peer.html:60 wireguard_peer/forms.py:54
+#: templates/wireguard/wireguard_manage_peer.html:116
+#: wireguard_peer/forms.py:54
msgid "Pre-Shared Key"
msgstr "Clé pré‑partagée"
-#: templates/wireguard/wireguard_manage_peer.html:110
+#: templates/wireguard/wireguard_manage_peer.html:166
msgid "AllowedIPs at Peer section of wg"
msgstr "AllowedIPs dans la section Peer de wg"
-#: templates/wireguard/wireguard_manage_peer.html:111
+#: templates/wireguard/wireguard_manage_peer.html:167
msgid "Peer IP Addresses and networks"
msgstr "Adresses IP et réseaux du peer"
-#: templates/wireguard/wireguard_manage_peer.html:115
+#: templates/wireguard/wireguard_manage_peer.html:171
msgid "Add IP Address"
msgstr "Ajouter une adresse IP"
-#: templates/wireguard/wireguard_manage_peer.html:129
-#: templates/wireguard/wireguard_manage_peer.html:218
+#: templates/wireguard/wireguard_manage_peer.html:185
+#: templates/wireguard/wireguard_manage_peer.html:274
msgid "Main ip address"
msgstr "Adresse IP principale"
-#: templates/wireguard/wireguard_manage_peer.html:144
+#: templates/wireguard/wireguard_manage_peer.html:200
msgid "AllowedIPs at client configuration file"
msgstr "AllowedIPs dans le fichier de configuration client"
-#: templates/wireguard/wireguard_manage_peer.html:145
+#: templates/wireguard/wireguard_manage_peer.html:201
msgid "Client Routing"
msgstr "Routage client"
-#: templates/wireguard/wireguard_manage_peer.html:150
+#: templates/wireguard/wireguard_manage_peer.html:206
msgid "Apply template"
msgstr "Appliquer le modèle"
-#: templates/wireguard/wireguard_manage_peer.html:154
+#: templates/wireguard/wireguard_manage_peer.html:210
msgid "Add Client route"
msgstr "Ajouter une route client"
-#: templates/wireguard/wireguard_manage_peer.html:167
+#: templates/wireguard/wireguard_manage_peer.html:223
msgid "Routing Template"
msgstr "Modèle de Routage"
-#: templates/wireguard/wireguard_manage_peer.html:180
+#: templates/wireguard/wireguard_manage_peer.html:236
msgid "Template Route"
msgstr "Route du modèle"
-#: templates/wireguard/wireguard_manage_peer.html:191
+#: templates/wireguard/wireguard_manage_peer.html:247
msgid ""
"The client is not configured to use the VPN as the default gateway."
"\\n\\nOnly the specific networks listed below are routed through the VPN."
@@ -2079,7 +2242,7 @@ msgstr ""
"\\n\\nRemarque: ces routes ne sont pas poussées automatiquement vers le "
"client ; vous devrez mettre à jour manuellement son fichier de configuration."
-#: templates/wireguard/wireguard_manage_peer.html:194
+#: templates/wireguard/wireguard_manage_peer.html:250
msgid ""
"The client is configured to use the VPN as the default gateway. \\n\\nThis "
"setting routes all client internet traffic through the VPN, enhancing "
@@ -2089,27 +2252,27 @@ msgstr ""
"\\n\\nTout son trafic Internet passe donc par le VPN, améliorant la "
"confidentialité et la sécurité de ses connexions."
-#: templates/wireguard/wireguard_manage_peer.html:202
+#: templates/wireguard/wireguard_manage_peer.html:258
msgid "default route"
msgstr "route par défaut"
-#: templates/wireguard/wireguard_manage_peer.html:236
+#: templates/wireguard/wireguard_manage_peer.html:292
msgid "Peer List"
msgstr "Liste des Peers"
-#: templates/wireguard/wireguard_manage_peer.html:240
+#: templates/wireguard/wireguard_manage_peer.html:296
msgid "Reactivate"
msgstr "Réactiver"
-#: templates/wireguard/wireguard_manage_peer.html:242
+#: templates/wireguard/wireguard_manage_peer.html:298
msgid "Suspend"
msgstr "Suspendre"
-#: templates/wireguard/wireguard_manage_peer.html:246
+#: templates/wireguard/wireguard_manage_peer.html:302
msgid "Delete Peer"
msgstr "Supprimer le peer"
-#: templates/wireguard/wireguard_manage_peer.html:256
+#: templates/wireguard/wireguard_manage_peer.html:312
msgid "Please type \\\"delete\\\" to remove peer configuration."
msgstr "Tapez \\\"delete\\\" pour supprimer la configuration du peer."
@@ -2882,90 +3045,89 @@ msgstr "Réactiver maintenant"
msgid "Suspend now"
msgstr "Suspendre maintenant"
-#: wireguard_peer/forms.py:140
+#: wireguard_peer/forms.py:139
msgid "Schedule"
msgstr "Programmer"
-#: wireguard_peer/forms.py:144
+#: wireguard_peer/forms.py:143
msgid "Clear Schedule"
msgstr "Effacer la programmation"
-#: wireguard_peer/forms.py:182
+#: wireguard_peer/forms.py:181
msgid ""
"The difference between suspend and unsuspend times must be at least 5 "
"minutes."
msgstr ""
-"La différence entre les heures de suspension et de réactivation doit être d'au "
-"moins 5 minutes."
+"La différence entre les heures de suspension et de réactivation doit être "
+"d'au moins 5 minutes."
-#: wireguard_peer/forms.py:186
+#: wireguard_peer/forms.py:185
msgid "Scheduled suspension time must be at least 10 minutes in the future."
msgstr ""
-"L'heure de suspension programmée doit être au moins 10 minutes dans le "
-"futur."
+"L'heure de suspension programmée doit être au moins 10 minutes dans le futur."
-#: wireguard_peer/forms.py:189
+#: wireguard_peer/forms.py:188
msgid "Scheduled unsuspension time must be at least 10 minutes in the future."
msgstr ""
"L'heure de réactivation programmée doit être au moins 10 minutes dans le "
"futur."
-#: wireguard_peer/views.py:58
+#: wireguard_peer/views.py:61
msgid "Disabled WireGuard Peer List"
msgstr "Liste des peers WireGuard désactivés"
-#: wireguard_peer/views.py:61
+#: wireguard_peer/views.py:64
msgid "WireGuard Peer List"
msgstr "Liste des peers WireGuard"
-#: wireguard_peer/views.py:198
+#: wireguard_peer/views.py:201
msgid "Peer created|Peer created successfully."
msgstr "Peer créé | Peer créé avec succès."
-#: wireguard_peer/views.py:203
+#: wireguard_peer/views.py:206
msgid "Error creating peer|No available IP address found for peer creation."
msgstr "Erreur de création | Aucune adresse IP disponible pour créer le peer."
-#: wireguard_peer/views.py:226
+#: wireguard_peer/views.py:229
msgid "Peer deleted|Peer deleted successfully."
msgstr "Peer supprimé | Peer supprimé avec succès."
-#: wireguard_peer/views.py:229
+#: wireguard_peer/views.py:232
msgid ""
"Error deleting peer|Invalid confirmation message. Type \"delete\" to confirm."
msgstr ""
"Erreur de suppression | Message de confirmation invalide. Tapez « delete » "
"pour confirmer."
-#: wireguard_peer/views.py:231
+#: wireguard_peer/views.py:234
msgid "Peer Configuration: "
msgstr "Configuration du peer: "
-#: wireguard_peer/views.py:269
+#: wireguard_peer/views.py:279
msgid "Peer updated|Peer updated successfully."
msgstr "Peer mis à jour | Peer mis à jour avec succès."
-#: wireguard_peer/views.py:272
+#: wireguard_peer/views.py:282
msgid "Edit Peer"
msgstr "Modifier le Peer"
-#: wireguard_peer/views.py:274
+#: wireguard_peer/views.py:284
msgid "Edit Peer Name"
msgstr "Modifier le Nom du Peer"
-#: wireguard_peer/views.py:276
+#: wireguard_peer/views.py:286
msgid "Edit Keepalive"
msgstr "Modifier le Keepalive"
-#: wireguard_peer/views.py:278
+#: wireguard_peer/views.py:288
msgid "Edit Keys"
msgstr "Modifier les Clés"
-#: wireguard_peer/views.py:310
+#: wireguard_peer/views.py:320
msgid "IP address deleted|IP address deleted successfully."
msgstr "Adresse IP supprimée | Suppression réussie."
-#: wireguard_peer/views.py:315
+#: wireguard_peer/views.py:325
msgid ""
"Error deleting IP address|Invalid confirmation message. Type \"delete\" to "
"confirm."
@@ -2973,27 +3135,27 @@ msgstr ""
"Erreur de suppression de l’IP | Message de confirmation invalide. Tapez « "
"delete » pour confirmer."
-#: wireguard_peer/views.py:320
+#: wireguard_peer/views.py:330
msgid "Manage client route"
msgstr "Gérer la route client"
-#: wireguard_peer/views.py:322
+#: wireguard_peer/views.py:332
msgid "Manage IP address or Network"
msgstr "Gérer l’adresse IP ou le réseau"
-#: wireguard_peer/views.py:335
+#: wireguard_peer/views.py:345
msgid "IP address updated|IP address updated successfully."
msgstr "Adresse IP mise à jour | Mise à jour réussie."
-#: wireguard_peer/views.py:337
+#: wireguard_peer/views.py:347
msgid "IP address added|IP address added successfully."
msgstr "Adresse IP ajoutée | Ajout réussi."
-#: wireguard_peer/views.py:369
+#: wireguard_peer/views.py:379
msgid "Route template unlinked successfully."
msgstr "Modèle de routage dissocié avec succès."
-#: wireguard_peer/views.py:379
+#: wireguard_peer/views.py:389
msgid ""
"Cannot apply template: This template does not allow custom routes, but the "
"peer has custom client routes defined."
@@ -3001,15 +3163,15 @@ msgstr ""
"Impossible d'appliquer le modèle : ce modèle n'autorise pas les routes "
"personnalisées, mais le peer a des routes client personnalisées définies."
-#: wireguard_peer/views.py:386
+#: wireguard_peer/views.py:396
msgid "Route template applied successfully."
msgstr "Modèle de routage appliqué avec succès."
-#: wireguard_peer/views.py:419
+#: wireguard_peer/views.py:429
msgid "Peer suspension/unsuspension scheduled successfully."
msgstr "Suspension/réactivation du peer programmée avec succès."
-#: wireguard_peer/views.py:423
+#: wireguard_peer/views.py:431
msgid ""
"Error scheduling peer suspension/unsuspension. Please correct the errors "
"below."
@@ -3017,27 +3179,47 @@ msgstr ""
"Erreur lors de la programmation de la suspension/réactivation du peer. "
"Veuillez corriger les erreurs ci-dessous."
-#: wireguard_peer/views.py:430
+#: wireguard_peer/views.py:438
msgid "Schedule cleared successfully."
msgstr "Programmation effacée avec succès."
-#: wireguard_peer/views.py:438
+#: wireguard_peer/views.py:452
msgid "Peer suspended successfully."
msgstr "Peer suspendu avec succès."
-#: wireguard_peer/views.py:446
+#: wireguard_peer/views.py:454
+msgid "Peer suspended, but failed to reload WireGuard interface: "
+msgstr ""
+
+#: wireguard_peer/views.py:464
msgid "Peer reactivated successfully."
msgstr "Peer réactivé avec succès."
-#: wireguard_peer/views.py:450
+#: wireguard_peer/views.py:466
+msgid "Peer reactivated, but failed to reload WireGuard interface: "
+msgstr ""
+
+#: wireguard_peer/views.py:469
msgid "Invalid action."
msgstr "Action invalide."
-#: wireguard_peer/views.py:455
+#: wireguard_peer/views.py:474
msgid "Suspend / Reactivate Peer"
msgstr "Suspendre / Réactiver le Peer"
-#: wireguard_tools/views.py:181
+#: wireguard_peer/views.py:497
+#, fuzzy
+#| msgid "Schedule Profile deleted successfully."
+msgid "Peer scheduling profile updated successfully."
+msgstr "Profil de planification supprimé avec succès."
+
+#: wireguard_peer/views.py:503
+#, fuzzy
+#| msgid "Delete Schedule Profile"
+msgid "Manage Peer Schedule Profile"
+msgstr "Supprimer le Profil de Planification"
+
+#: wireguard_tools/views.py:237
msgid ""
"Export successful!|WireGuard configuration files have been exported to /etc/"
"wireguard/."
@@ -3045,7 +3227,7 @@ msgstr ""
"Exportation réussie! | Les fichiers de configuration WireGuard ont été "
"exportés vers /etc/wireguard/."
-#: wireguard_tools/views.py:183
+#: wireguard_tools/views.py:239
msgid ""
"Export successful!|WireGuard configuration files have been exported to /etc/"
"wireguard/. Don't forget to restart the interfaces."
@@ -3053,19 +3235,19 @@ msgstr ""
"Exportation réussie! | Les fichiers WireGuard ont été exportés vers /etc/"
"wireguard/. N’oubliez pas de redémarrer les interfaces."
-#: wireguard_tools/views.py:285
+#: wireguard_tools/views.py:341
msgid "Error reloading"
msgstr "Erreur de rechargement"
-#: wireguard_tools/views.py:297
+#: wireguard_tools/views.py:353
msgid "Error stopping"
msgstr "Erreur à l’arrêt"
-#: wireguard_tools/views.py:302
+#: wireguard_tools/views.py:358
msgid "Error starting"
msgstr "Erreur au démarrage"
-#: wireguard_tools/views.py:309
+#: wireguard_tools/views.py:365
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, "
@@ -3074,21 +3256,21 @@ msgstr ""
"AVERTISSEMENT | L’interface a été rechargée, pas redémarrée. Vérifiez que "
"les peers fonctionnent comme prévu ; signalez tout problème rencontré."
-#: wireguard_tools/views.py:310
+#: wireguard_tools/views.py:366
msgid "WireGuard reloaded|The WireGuard service has been reloaded."
msgstr "WireGuard rechargé | Le service WireGuard a été rechargé."
-#: wireguard_tools/views.py:312
+#: wireguard_tools/views.py:368
msgid "WireGuard restarted|The WireGuard service has been restarted."
msgstr "WireGuard redémarré | Le service WireGuard a été redémarré."
-#: wireguard_tools/views.py:315
+#: wireguard_tools/views.py:371
msgid "Errors encountered|Error processing one or more interfaces."
msgstr ""
"Erreurs rencontrées | Problème lors du traitement d’une ou plusieurs "
"interfaces."
-#: wireguard_tools/views.py:318
+#: wireguard_tools/views.py:374
msgid "No interfaces found|No WireGuard interfaces were found to process."
msgstr "Aucune interface trouvée | Aucune interface WireGuard à traiter."
diff --git a/locale/pt_BR/LC_MESSAGES/django.po b/locale/pt_BR/LC_MESSAGES/django.po
index 467f235..c11135a 100644
--- a/locale/pt_BR/LC_MESSAGES/django.po
+++ b/locale/pt_BR/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2026-02-03 14:49-0300\n"
+"POT-Creation-Date: 2026-02-09 13:51-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -73,7 +73,8 @@ msgstr "Token"
#: templates/wireguard/peer_list/peer_preview_modal.html:79
#: templates/wireguard/wireguard_manage_ip.html:42 user_manager/forms.py:49
#: user_manager/forms.py:180 vpn_invite/forms.py:192 vpn_invite/forms.py:326
-#: wireguard/forms.py:51 wireguard_peer/forms.py:27 wireguard_peer/forms.py:157
+#: wireguard/forms.py:51 wireguard_peer/forms.py:27 wireguard_peer/forms.py:156
+#: wireguard_peer/forms.py:210
msgid "Back"
msgstr "Voltar"
@@ -81,7 +82,7 @@ msgstr "Voltar"
#: routing_templates/forms.py:37
#: templates/firewall/manage_firewall_rule.html:382
#: templates/firewall/manage_redirect_rule.html:86
-#: templates/scheduler/scheduleprofile_form.html:112
+#: templates/scheduler/scheduleprofile_form.html:127
#: templates/scheduler/scheduleprofile_list.html:29
#: templates/wireguard/peer_list/peer_preview_modal.html:109
#: templates/wireguard/wireguard_manage_ip.html:43 user_manager/forms.py:48
@@ -90,14 +91,15 @@ msgid "Delete"
msgstr "Excluir"
#: cluster/forms.py:67 cluster/forms.py:124 dns/forms.py:37 dns/forms.py:83
-#: dns/forms.py:134 routing_templates/forms.py:70 scheduler/forms.py:61
+#: dns/forms.py:134 routing_templates/forms.py:70 scheduler/forms.py:102
#: templates/firewall/manage_firewall_rule.html:379
#: templates/firewall/manage_firewall_settings.html:59
#: templates/firewall/manage_redirect_rule.html:84
-#: templates/scheduler/scheduleprofile_form.html:134
+#: templates/scheduler/scheduleprofile_form.html:200
#: templates/wireguard/wireguard_manage_ip.html:41 user_manager/forms.py:98
#: user_manager/forms.py:205 vpn_invite/forms.py:191 vpn_invite/forms.py:325
#: wireguard/forms.py:100 wireguard_peer/forms.py:26
+#: wireguard_peer/forms.py:205
msgid "Save"
msgstr "Salvar"
@@ -131,8 +133,9 @@ msgstr "Exibição do Worker"
#: cluster/forms.py:136
msgid "Cluster mode requires WireGuard status cache to be enabled."
-msgstr "O modo cluster requer que o cache de status do WireGuard esteja habilitado."
-"O modo cluster requer que o cache de status do WireGuard esteja habilitado."
+msgstr ""
+"O modo cluster requer que o cache de status do WireGuard esteja habilitado.O "
+"modo cluster requer que o cache de status do WireGuard esteja habilitado."
#: cluster/models.py:46
msgid ""
@@ -140,9 +143,8 @@ msgid ""
"IP address."
msgstr ""
"O bloqueio de IP está habilitado, mas o worker está tentando acessar de um "
-"endereço IP diferente."
-"O bloqueio de IP está habilitado, mas o worker está tentando acessar de um "
-"endereço IP diferente."
+"endereço IP diferente.O bloqueio de IP está habilitado, mas o worker está "
+"tentando acessar de um endereço IP diferente."
#: cluster/models.py:47
msgid "Worker is not enabled"
@@ -158,9 +160,9 @@ msgid ""
"in the API request."
msgstr ""
"Por favor, informe worker_config_version, worker_dns_version e "
-"worker_version na requisição da API."
-"Por favor, informe worker_config_version, worker_dns_version e "
-"worker_version na requisição da API."
+"worker_version na requisição da API.Por favor, informe "
+"worker_config_version, worker_dns_version e worker_version na requisição da "
+"API."
#: cluster/models.py:50
msgid "Worker update is required."
@@ -171,7 +173,7 @@ msgstr "A atualização do worker é necessária."
msgid "Access Denied"
msgstr "Acesso Negado"
-#: cluster/views.py:21 templates/template_parts/base_sidebar.html:97
+#: cluster/views.py:21 templates/template_parts/base_sidebar.html:107
msgid "Cluster"
msgstr "Cluster"
@@ -241,8 +243,7 @@ msgstr ""
" Informações de Localização
\n"
" Detalhes de localização opcionais para este worker (país, cidade, "
"hostname).
\n"
-" "
-"\n"
+" \n"
" Configuração do Worker
\n"
" Configure um nó worker do cluster que irá sincronizar com esta "
"instância primária.
\n"
@@ -309,8 +310,7 @@ msgstr ""
" Exibição do Worker
\n"
" Selecione como os workers devem ser identificados na interface - "
"por nome, endereço do servidor, localização ou uma combinação.
\n"
-" "
-"\n"
+" \n"
" Modo do Cluster
\n"
" Configure como o cluster opera e sincroniza as configurações "
"entre os nós.
\n"
@@ -329,46 +329,68 @@ msgstr ""
"por nome, endereço do servidor, localização ou uma combinação.\n"
" "
-#: console/views.py:25 console/views.py:57 user_manager/forms.py:16
+#: console/views.py:27 console/views.py:67 user_manager/forms.py:16
msgid "Console"
msgstr "Console"
-#: console/views.py:27
+#: console/views.py:29
msgid "iptables list"
msgstr "Lista de regras do iptables"
-#: console/views.py:33
+#: console/views.py:35
msgid "running processes"
msgstr "Processos em execução"
-#: console/views.py:36
+#: console/views.py:38
msgid "WireGuard show"
msgstr "Estado do WireGuard"
-#: console/views.py:39
+#: console/views.py:40
+msgid "Enhanced filter is enabled. This command is not available."
+msgstr "Filtro aprimorado está habilitado. Este comando não está disponível."
+
+#: console/views.py:46
msgid "Memory usage"
msgstr "Uso de Memória"
-#: console/views.py:42
+#: console/views.py:49
msgid "Routing table"
msgstr "Tabela de Roteamento"
-#: console/views.py:54
+#: console/views.py:61
msgid "DNS container test script"
msgstr "Script de teste do contêiner DNS"
-#: console/views.py:57
+#: console/views.py:64
+#, fuzzy
+#| msgid "WireGuard Status"
+msgid "Flush Wireguard status cache"
+msgstr "Estado do WireGuard"
+
+#: console/views.py:67
msgid "Invalid command"
msgstr "Comando inválido"
-#: console/views.py:64
+#: console/views.py:78
+#, fuzzy
+#| msgid "Cluster mode requires WireGuard status cache to be enabled."
+msgid "Flushed WireGuard status cache for worker: "
+msgstr ""
+"O modo cluster requer que o cache de status do WireGuard esteja habilitado.O "
+"modo cluster requer que o cache de status do WireGuard esteja habilitado."
+
+#: console/views.py:83
+#, fuzzy
+#| msgid "Cluster mode requires WireGuard status cache to be enabled."
+msgid "Flushed WireGuard status cache entries: "
+msgstr ""
+"O modo cluster requer que o cache de status do WireGuard esteja habilitado.O "
+"modo cluster requer que o cache de status do WireGuard esteja habilitado."
+
+#: console/views.py:87
msgid "Invalid target"
msgstr "Destino inválido"
-#: console/views.py:69
-msgid "Enhanced filter is enabled. This command is not available."
-msgstr "Filtro aprimorado está habilitado. Este comando não está disponível."
-
#: dns/forms.py:22 wireguard/forms.py:24
msgid "Primary DNS"
msgstr "DNS Primário"
@@ -412,8 +434,9 @@ msgstr "Lista de Filtro de DNS padrão criada com sucesso"
msgid ""
"Pending Changes|There are pending DNS changes that have not been applied"
msgstr ""
-"Alterações Pendentes|Há alterações de DNS pendentes que não foram aplicadas"
-"Alterações Pendentes|Há alterações de DNS pendentes que não foram aplicadas"
+"Alterações Pendentes|Há alterações de DNS pendentes que não foram "
+"aplicadasAlterações Pendentes|Há alterações de DNS pendentes que não foram "
+"aplicadas"
#: dns/views.py:91
msgid "DNS Forwarders"
@@ -683,9 +706,9 @@ msgid ""
"rule was not deleted."
msgstr ""
"Erro ao excluir a regra de Encaminhamento de porta|Confirmação inválida. A "
-"regra de Encaminhamento de porta não foi excluída."
-"Erro ao excluir a regra de Encaminhamento de porta|Confirmação inválida. A "
-"regra de Encaminhamento de porta não foi excluída."
+"regra de Encaminhamento de porta não foi excluída.Erro ao excluir a regra de "
+"Encaminhamento de porta|Confirmação inválida. A regra de Encaminhamento de "
+"porta não foi excluída."
#: firewall/views.py:54
msgid "Port Forward rule saved successfully"
@@ -709,9 +732,8 @@ msgid ""
"not deleted."
msgstr ""
"Erro ao excluir a regra de Firewall|Confirmação inválida. A regra de "
-"Firewall não foi removida."
-"Erro ao excluir a regra de Firewall|Confirmação inválida. A regra de "
-"Firewall não foi removida."
+"Firewall não foi removida.Erro ao excluir a regra de Firewall|Confirmação "
+"inválida. A regra de Firewall não foi removida."
#: firewall/views.py:125
msgid "Firewall rule saved successfully"
@@ -739,9 +761,8 @@ msgid ""
"language, please open an"
msgstr ""
"Se encontrar algum problema na tradução ou quiser solicitar um novo idioma, "
-"por favor abra uma"
-"Se encontrar algum problema na tradução ou quiser solicitar um novo idioma, "
-"por favor abra uma"
+"por favor abra umaSe encontrar algum problema na tradução ou quiser "
+"solicitar um novo idioma, por favor abra uma"
#: routing_templates/forms.py:29
#: templates/firewall/manage_redirect_rule.html:57
@@ -774,9 +795,8 @@ msgstr "Forçar Política de Roteamento"
msgid "Custom routes should be empty when Route Type is 'Default Route'."
msgstr ""
"As rotas personalizadas devem estar vazias quando o Tipo de Rota é 'Rota "
-"Padrão'."
-"As rotas personalizadas devem estar vazias quando o Tipo de Rota é 'Rota "
-"Padrão'."
+"Padrão'.As rotas personalizadas devem estar vazias quando o Tipo de Rota é "
+"'Rota Padrão'."
#: routing_templates/forms.py:95
msgid ""
@@ -784,17 +804,15 @@ msgid ""
"Route'."
msgstr ""
"Permitir rotas personalizadas do peer não é aplicável quando o Tipo de Rota "
-"é 'Rota Padrão'."
-"Permitir rotas personalizadas do peer não é aplicável quando o Tipo de Rota "
-"é 'Rota Padrão'."
+"é 'Rota Padrão'.Permitir rotas personalizadas do peer não é aplicável quando "
+"o Tipo de Rota é 'Rota Padrão'."
#: routing_templates/forms.py:102
msgid "At least one route must be provided when Route Type is 'Custom'."
msgstr ""
"Pelo menos uma rota deve ser fornecida quando o Tipo de Rota é "
-"'Personalizada'."
-"Pelo menos uma rota deve ser fornecida quando o Tipo de Rota é "
-"'Personalizada'."
+"'Personalizada'.Pelo menos uma rota deve ser fornecida quando o Tipo de Rota "
+"é 'Personalizada'."
#: routing_templates/forms.py:113 routing_templates/forms.py:123
#, python-format
@@ -803,9 +821,8 @@ msgid ""
"10.0.0.0/24)."
msgstr ""
"Formato de rota inválido: '%(line)s'. Por favor, use a notação CIDR (ex: "
-"10.0.0.0/24)."
-"Formato de rota inválido: '%(line)s'. Por favor, use a notação CIDR (ex: "
-"10.0.0.0/24)."
+"10.0.0.0/24).Formato de rota inválido: '%(line)s'. Por favor, use a notação "
+"CIDR (ex: 10.0.0.0/24)."
#: routing_templates/forms.py:131
#, python-format
@@ -819,8 +836,9 @@ msgid ""
"'%(line)s' is not a network address. Use the network address (e.g., "
"'%(net)s')."
msgstr ""
-"'%(line)s' não é um endereço de rede. Use o endereço da rede (ex: '%(net)s')."
-"'%(line)s' não é um endereço de rede. Use o endereço da rede (ex: '%(net)s')."
+"'%(line)s' não é um endereço de rede. Use o endereço da rede (ex: "
+"'%(net)s').'%(line)s' não é um endereço de rede. Use o endereço da rede (ex: "
+"'%(net)s')."
#: routing_templates/models.py:13
msgid "Default Route (0.0.0.0/0)"
@@ -838,7 +856,7 @@ msgstr "Rotas de Todos os Peers"
msgid "One route per line in CIDR notation."
msgstr "Uma rota por linha em notação CIDR."
-#: routing_templates/views.py:16 templates/template_parts/base_sidebar.html:79
+#: routing_templates/views.py:16 templates/template_parts/base_sidebar.html:42
msgid "Routing Templates"
msgstr "Modelos de Roteamento"
@@ -937,100 +955,125 @@ msgstr ""
"pode gerar um grande número de regras de firewall.\n"
" "
-#: scheduler/forms.py:14
+#: scheduler/forms.py:17
msgid "Profile Name"
msgstr "Nome do Perfil"
-#: scheduler/forms.py:38 templates/scheduler/scheduleprofile_form.html:92
+#: scheduler/forms.py:74 templates/scheduler/scheduleprofile_form.html:107
msgid "Start Day"
msgstr "Dia de Início"
-#: scheduler/forms.py:39 templates/scheduler/scheduleprofile_form.html:93
+#: scheduler/forms.py:75 templates/scheduler/scheduleprofile_form.html:108
msgid "Start Time"
msgstr "Hora de Início"
-#: scheduler/forms.py:40 templates/scheduler/scheduleprofile_form.html:94
+#: scheduler/forms.py:76 templates/scheduler/scheduleprofile_form.html:109
msgid "End Day"
msgstr "Dia de Término"
-#: scheduler/forms.py:41 templates/scheduler/scheduleprofile_form.html:95
+#: scheduler/forms.py:77 templates/scheduler/scheduleprofile_form.html:110
msgid "End Time"
msgstr "Hora de Término"
-#: scheduler/models.py:9
+#: scheduler/forms.py:122
+msgid "Unable to validate overlaps: schedule profile is missing."
+msgstr ""
+
+#: scheduler/forms.py:129 scheduler/forms.py:132
+#, fuzzy
+#| msgid ""
+#| "The difference between suspend and unsuspend times must be at least 5 "
+#| "minutes."
+msgid "The minimum duration between start and end must be at least 10 minutes."
+msgstr ""
+"A diferença entre os horários de suspensão e reativação deve ser de pelo "
+"menos 5 minutos."
+
+#: scheduler/forms.py:150
+#, python-format
+msgid "This time slot overlaps with an existing slot (%(start)s → %(end)s)."
+msgstr ""
+
+#: scheduler/forms.py:160
+#, fuzzy
+#| msgid "Scheduled suspension time must be at least 10 minutes in the future."
+msgid "There must be at least 10 minutes between time slots."
+msgstr "O agendamento de suspensão deve ser pelo menos 10 minutos no futuro."
+
+#: scheduler/models.py:11
msgid "Monday"
msgstr "Segunda-feira"
-#: scheduler/models.py:10
+#: scheduler/models.py:12
msgid "Tuesday"
msgstr "Terça-feira"
-#: scheduler/models.py:11
+#: scheduler/models.py:13
msgid "Wednesday"
msgstr "Quarta-feira"
-#: scheduler/models.py:12
+#: scheduler/models.py:14
msgid "Thursday"
msgstr "Quinta-feira"
-#: scheduler/models.py:13
+#: scheduler/models.py:15
msgid "Friday"
msgstr "Sexta-feira"
-#: scheduler/models.py:14
+#: scheduler/models.py:16
msgid "Saturday"
msgstr "Sábado"
-#: scheduler/models.py:15
+#: scheduler/models.py:17
msgid "Sunday"
msgstr "Domingo"
-#: scheduler/views.py:26
+#: scheduler/views.py:27
msgid "Edit Schedule Profile"
msgstr "Editar Perfil de Agendamento"
-#: scheduler/views.py:30
+#: scheduler/views.py:31
msgid "Create Schedule Profile"
msgstr "Criar Perfil de Agendamento"
-#: scheduler/views.py:37
+#: scheduler/views.py:44
msgid "Schedule Profile saved successfully."
msgstr "Perfil de agendamento salvo com sucesso."
-#: scheduler/views.py:58
+#: scheduler/views.py:68
msgid "Schedule Profile deleted successfully."
msgstr "Perfil de agendamento excluído com sucesso."
-#: scheduler/views.py:63
+#: scheduler/views.py:73
msgid "Delete Schedule Profile"
msgstr "Excluir Perfil de Agendamento"
-#: scheduler/views.py:65
+#: scheduler/views.py:75
#, python-format
msgid "Are you sure you want to delete the profile \"%(name)s\"?"
msgstr "Tem certeza de que deseja excluir o perfil \"%(name)s\"?"
-#: scheduler/views.py:78
+#: scheduler/views.py:88
msgid "Edit Time Interval"
msgstr "Editar Intervalo de Horário"
-#: scheduler/views.py:82
+#: scheduler/views.py:92
msgid "Add Time Interval"
msgstr "Adicionar Intervalo de Horário"
-#: scheduler/views.py:92
+#: scheduler/views.py:102
msgid "Time Interval saved successfully."
msgstr "Intervalo de horário salvo com sucesso."
-#: scheduler/views.py:115
+#: scheduler/views.py:125
msgid "Time Interval deleted successfully."
msgstr "Intervalo de horário excluído com sucesso."
-#: scheduler/views.py:120
+#: scheduler/views.py:130
msgid "Delete Time Interval"
msgstr "Excluir Intervalo de Horário"
-#: scheduler/views.py:122
+#: scheduler/views.py:132
msgid "Are you sure you want to delete this time interval?"
msgstr "Tem certeza de que deseja excluir este intervalo de horário?"
@@ -1043,9 +1086,8 @@ msgid ""
"Please contact your system administrator if you believe this is an error."
msgstr ""
"Por favor, entre em contato com o administrador do sistema se você acredita "
-"que isto é um erro."
-"Por favor, entre em contato com o administrador do sistema se você acredita "
-"que isto é um erro."
+"que isto é um erro.Por favor, entre em contato com o administrador do "
+"sistema se você acredita que isto é um erro."
#: templates/accounts/login.html:14 templates/user_manager/list.html:8
#: user_manager/forms.py:13 vpn_invite/forms.py:281
@@ -1071,6 +1113,7 @@ msgid "Login again"
msgstr "Acessar novamente"
#: templates/cluster/workers_list.html:9 templates/dns/static_host_list.html:72
+#: templates/scheduler/scheduleprofile_form.html:82
#: templates/template_parts/base_sidebar.html:13 vpn_invite/forms.py:78
#: vpn_invite/forms.py:79 vpn_invite/forms.py:80 vpn_invite/forms.py:81
#: vpn_invite/forms.py:82
@@ -1100,9 +1143,8 @@ msgstr "Sincronização de configuração em andamento"
msgid "The worker is outdated. Please update it to the latest version."
msgstr ""
"O worker está desatualizado. Por favor, atualize-o para a versão mais "
-"recente."
-"O worker está desatualizado. Por favor, atualize-o para a versão mais "
-"recente."
+"recente.O worker está desatualizado. Por favor, atualize-o para a versão "
+"mais recente."
#: templates/cluster/workers_list.html:44
msgid "IP Lock Enabled"
@@ -1110,8 +1152,8 @@ msgstr "Bloqueio de IP Habilitado"
#: templates/cluster/workers_list.html:47
#: templates/cluster/workers_list.html:54
-#: templates/wireguard/wireguard_manage_peer.html:56
-#: templates/wireguard/wireguard_manage_peer.html:65
+#: templates/wireguard/wireguard_manage_peer.html:112
+#: templates/wireguard/wireguard_manage_peer.html:121
msgid "Not set"
msgstr "Não definido"
@@ -1126,7 +1168,7 @@ msgstr "Visto pela última vez há mais de 10 minutos ou nunca visto."
#: templates/cluster/workers_list.html:77
#: templates/dns/static_host_list.html:74
#: templates/routing_templates/list.html:29
-#: templates/scheduler/scheduleprofile_form.html:108
+#: templates/scheduler/scheduleprofile_form.html:123
#: templates/scheduler/scheduleprofile_list.html:25
#: templates/user_manager/list.html:53
#: templates/user_manager/peer_group_list.html:35
@@ -1217,7 +1259,7 @@ msgstr "Eu Entendo"
msgid "Clear"
msgstr "Limpar"
-#: templates/console/console.html:27
+#: templates/console/console.html:28
msgid "Destination Hostname or IP Address"
msgstr "Endereço ou IP do Destino"
@@ -1506,6 +1548,7 @@ msgstr "Tipo de Destino"
#: templates/firewall/manage_redirect_rule.html:42
#: templates/firewall/manage_redirect_rule.html:48
+#: templates/scheduler/scheduleprofile_form.html:159
#: templates/vpn_invite/invite_settings.html:17 user_manager/forms.py:178
msgid "Peer"
msgstr "Peer"
@@ -1606,7 +1649,7 @@ msgid "Confirm Delete"
msgstr "Confirmar Exclusão"
#: templates/generic_delete_confirmation.html:19
-#: templates/scheduler/scheduleprofile_form.html:137
+#: templates/scheduler/scheduleprofile_form.html:203
msgid "Cancel"
msgstr "Cancelar"
@@ -1624,31 +1667,87 @@ msgstr "Visualização de Agendamento"
#: templates/scheduler/scheduleprofile_form.html:70
#: templates/wireguard/apply_route_template.html:44
+#: templates/wireguard/wireguard_manage_peer.html:36
msgid "Active"
msgstr "Ativo"
#: templates/scheduler/scheduleprofile_form.html:71
+#: templates/scheduler/scheduleprofile_form.html:82
msgid "Inactive"
msgstr "Inativo"
-#: templates/scheduler/scheduleprofile_form.html:82
+#: templates/scheduler/scheduleprofile_form.html:78
+#, fuzzy
+#| msgid "Current Active Template:"
+msgid "Current time"
+msgstr "Modelo Ativo Atual:"
+
+#: templates/scheduler/scheduleprofile_form.html:79
+msgid "Becomes active at"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:80
+msgid "Becomes inactive at"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:97
msgid "Time Intervals"
msgstr "Intervalos de Horário"
-#: templates/scheduler/scheduleprofile_form.html:85
+#: templates/scheduler/scheduleprofile_form.html:100
msgid "Add Interval"
msgstr "Adicionar Intervalo"
-#: templates/scheduler/scheduleprofile_form.html:96
+#: templates/scheduler/scheduleprofile_form.html:111
#: templates/scheduler/scheduleprofile_list.html:15
#: templates/wireguard/apply_route_template.html:28
msgid "Actions"
msgstr "Ações"
-#: templates/scheduler/scheduleprofile_form.html:120
+#: templates/scheduler/scheduleprofile_form.html:135
msgid "No time intervals found."
msgstr "Nenhum intervalo de horário encontrado."
+#: templates/scheduler/scheduleprofile_form.html:152
+msgid "Linked Peers (Debug)"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:160
+#, fuzzy
+#| msgid "Disabled Peers"
+msgid "Disabled by Schedule"
+msgstr "Peers Inativos"
+
+#: templates/scheduler/scheduleprofile_form.html:161
+#, fuzzy
+#| msgid "Restart Enabled"
+msgid "Next Enable"
+msgstr "Reiniciar Habilitado"
+
+#: templates/scheduler/scheduleprofile_form.html:162
+#, fuzzy
+#| msgid "Disabled"
+msgid "Next Disable"
+msgstr "Desabilitado"
+
+#: templates/scheduler/scheduleprofile_form.html:175
+msgid "Yes"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:177
+msgid "No"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:185
+msgid "No peers linked to this profile."
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:207
+#, fuzzy
+#| msgid "Show extras"
+msgid "Show Peers"
+msgstr "Exibir extras"
+
#: templates/scheduler/scheduleprofile_list.html:7
msgid "Schedule Profiles"
msgstr "Perfis de Agendamento"
@@ -1697,20 +1796,20 @@ msgstr "Atualizar e reiniciar o serviço"
msgid "Update and reload service"
msgstr "Atualizar e recarregar o serviço"
-#: templates/template_parts/base_sidebar.html:59 user_manager/views.py:74
+#: templates/template_parts/base_sidebar.html:32
+msgid "Scheduler"
+msgstr "Agendador"
+
+#: templates/template_parts/base_sidebar.html:79 user_manager/views.py:74
msgid "User Manager"
msgstr "Configurar Usuários"
-#: templates/template_parts/base_sidebar.html:88
+#: templates/template_parts/base_sidebar.html:98
#: templates/wireguard/peer_list/peer_preview_modal.html:133
#: vpn_invite/views.py:37
msgid "VPN Invite"
msgstr "Convite para VPN"
-#: templates/template_parts/base_sidebar.html:107
-msgid "Scheduler"
-msgstr "Agendador"
-
#: templates/user_manager/list.html:9 user_manager/forms.py:20
msgid "User Level"
msgstr "Nível de Acesso"
@@ -1788,7 +1887,7 @@ msgstr "Configurações de Email"
msgid "Invite Settings"
msgstr "Configurações de Convite"
-#: templates/wireguard/apply_route_template.html:8 wireguard_peer/views.py:390
+#: templates/wireguard/apply_route_template.html:8 wireguard_peer/views.py:400
msgid "Apply Route Template"
msgstr "Aplicar Modelo de Roteamento"
@@ -1832,7 +1931,7 @@ msgstr "Transferência"
#: templates/wireguard/peer_list/peer_data.html:44
#: templates/wireguard/peer_list/script_wireguard_status_update.html:146
-#: wireguard_peer/views.py:112
+#: wireguard_peer/views.py:115
msgid "Primary Server"
msgstr "Servidor Primário"
@@ -1852,12 +1951,12 @@ msgid "Allowed IPs"
msgstr "IPs Permitidos"
#: templates/wireguard/peer_list/peer_preview_modal.html:45
-#: templates/wireguard/wireguard_manage_peer.html:79
+#: templates/wireguard/wireguard_manage_peer.html:135
msgid "Peer Traffic"
msgstr "Tráfego do Peer"
#: templates/wireguard/peer_list/peer_preview_modal.html:61
-#: templates/wireguard/wireguard_manage_peer.html:96
+#: templates/wireguard/wireguard_manage_peer.html:152
msgid "No traffic history, please wait a few minutes"
msgstr "Sem histórico de tráfego, por favor aguarde alguns minutos"
@@ -2015,7 +2114,7 @@ msgstr ""
"configuração está desatualizado."
#: templates/wireguard/server_detail.html:17
-#: templates/wireguard/wireguard_manage_peer.html:48 wireguard/forms.py:18
+#: templates/wireguard/wireguard_manage_peer.html:104 wireguard/forms.py:18
#: wireguard_peer/forms.py:52
msgid "Public Key"
msgstr "Chave Pública"
@@ -2059,8 +2158,8 @@ msgid "Enter Allowed IP"
msgstr "Inserir IP Permitido"
#: templates/wireguard/wireguard_manage_ip.html:34
-#: templates/wireguard/wireguard_manage_peer.html:131
-#: templates/wireguard/wireguard_manage_peer.html:220
+#: templates/wireguard/wireguard_manage_peer.html:187
+#: templates/wireguard/wireguard_manage_peer.html:276
#: wireguard_peer/forms.py:71
msgid "Priority"
msgstr "Prioridade"
@@ -2073,65 +2172,122 @@ msgstr "Por favor, digite \\\"delete\\\" para remover este endereço IP."
msgid "Peer Configuration"
msgstr "Configuração do Peer"
-#: templates/wireguard/wireguard_manage_peer.html:27 wireguard_peer/forms.py:41
+#: templates/wireguard/wireguard_manage_peer.html:27
+#, fuzzy
+#| msgid "Packet State"
+msgid "Peer State"
+msgstr "Estado do Pacote"
+
+#: templates/wireguard/wireguard_manage_peer.html:31
+#, fuzzy
+#| msgid "Suspend"
+msgid "Suspended"
+msgstr "Suspender"
+
+#: templates/wireguard/wireguard_manage_peer.html:40
+#, fuzzy
+#| msgid "Schedule"
+msgid "Scheduled suspend"
+msgstr "Agendar"
+
+#: templates/wireguard/wireguard_manage_peer.html:43
+msgid "Scheduled unsuspend"
+msgstr ""
+
+#: templates/wireguard/wireguard_manage_peer.html:54
+#, fuzzy
+#| msgid "Clear Schedule"
+msgid "Peer Schedule"
+msgstr "Limpar Agendamento"
+
+#: templates/wireguard/wireguard_manage_peer.html:60
+#, fuzzy
+#| msgid "Disabled Peers"
+msgid "Disabled by schedule"
+msgstr "Peers Inativos"
+
+#: templates/wireguard/wireguard_manage_peer.html:62
+#, fuzzy
+#| msgid "Restart Enabled"
+msgid "Next enable"
+msgstr "Reiniciar Habilitado"
+
+#: templates/wireguard/wireguard_manage_peer.html:65
+#, fuzzy
+#| msgid "Enabled Peers"
+msgid "Enabled by schedule"
+msgstr "Peers Ativos"
+
+#: templates/wireguard/wireguard_manage_peer.html:67
+#, fuzzy
+#| msgid "Disabled"
+msgid "Next disable"
+msgstr "Desabilitado"
+
+#: templates/wireguard/wireguard_manage_peer.html:71
+msgid "No profile associated"
+msgstr ""
+
+#: templates/wireguard/wireguard_manage_peer.html:83 wireguard_peer/forms.py:41
msgid "Persistent Keepalive"
msgstr "Conexão Persistente"
-#: templates/wireguard/wireguard_manage_peer.html:40
+#: templates/wireguard/wireguard_manage_peer.html:96
msgid "Keys"
msgstr "Chaves"
-#: templates/wireguard/wireguard_manage_peer.html:51 wireguard/forms.py:17
+#: templates/wireguard/wireguard_manage_peer.html:107 wireguard/forms.py:17
#: wireguard_peer/forms.py:53
msgid "Private Key"
msgstr "Chave Privada"
-#: templates/wireguard/wireguard_manage_peer.html:60 wireguard_peer/forms.py:54
+#: templates/wireguard/wireguard_manage_peer.html:116
+#: wireguard_peer/forms.py:54
msgid "Pre-Shared Key"
msgstr "Chave Pré-Compartilhada"
-#: templates/wireguard/wireguard_manage_peer.html:110
+#: templates/wireguard/wireguard_manage_peer.html:166
msgid "AllowedIPs at Peer section of wg"
msgstr "AllowedIPs na seção Peer do wg"
-#: templates/wireguard/wireguard_manage_peer.html:111
+#: templates/wireguard/wireguard_manage_peer.html:167
msgid "Peer IP Addresses and networks"
msgstr "Endereços IP e redes do Peer"
-#: templates/wireguard/wireguard_manage_peer.html:115
+#: templates/wireguard/wireguard_manage_peer.html:171
msgid "Add IP Address"
msgstr "Adicionar IP"
-#: templates/wireguard/wireguard_manage_peer.html:129
-#: templates/wireguard/wireguard_manage_peer.html:218
+#: templates/wireguard/wireguard_manage_peer.html:185
+#: templates/wireguard/wireguard_manage_peer.html:274
msgid "Main ip address"
msgstr "Endereço IP principal"
-#: templates/wireguard/wireguard_manage_peer.html:144
+#: templates/wireguard/wireguard_manage_peer.html:200
msgid "AllowedIPs at client configuration file"
msgstr "AllowedIPs no arquivo de configuração do cliente"
-#: templates/wireguard/wireguard_manage_peer.html:145
+#: templates/wireguard/wireguard_manage_peer.html:201
msgid "Client Routing"
msgstr "Roteamento do Cliente"
-#: templates/wireguard/wireguard_manage_peer.html:150
+#: templates/wireguard/wireguard_manage_peer.html:206
msgid "Apply template"
msgstr "Aplicar modelo"
-#: templates/wireguard/wireguard_manage_peer.html:154
+#: templates/wireguard/wireguard_manage_peer.html:210
msgid "Add Client route"
msgstr "Adicionar rota"
-#: templates/wireguard/wireguard_manage_peer.html:167
+#: templates/wireguard/wireguard_manage_peer.html:223
msgid "Routing Template"
msgstr "Modelo de Roteamento"
-#: templates/wireguard/wireguard_manage_peer.html:180
+#: templates/wireguard/wireguard_manage_peer.html:236
msgid "Template Route"
msgstr "Rota do Modelo"
-#: templates/wireguard/wireguard_manage_peer.html:191
+#: templates/wireguard/wireguard_manage_peer.html:247
msgid ""
"The client is not configured to use the VPN as the default gateway."
"\\n\\nOnly the specific networks listed below are routed through the VPN."
@@ -2145,7 +2301,7 @@ msgstr ""
"cliente. Você precisará atualizar manualmente o arquivo de configuração do "
"cliente para refletir essas configurações."
-#: templates/wireguard/wireguard_manage_peer.html:194
+#: templates/wireguard/wireguard_manage_peer.html:250
msgid ""
"The client is configured to use the VPN as the default gateway. \\n\\nThis "
"setting routes all client internet traffic through the VPN, enhancing "
@@ -2155,27 +2311,27 @@ msgstr ""
"configuração direciona todo o tráfego de internet do cliente através da VPN, "
"aprimorando a privacidade e a segurança em todas as conexões."
-#: templates/wireguard/wireguard_manage_peer.html:202
+#: templates/wireguard/wireguard_manage_peer.html:258
msgid "default route"
msgstr "rota padrão"
-#: templates/wireguard/wireguard_manage_peer.html:236
+#: templates/wireguard/wireguard_manage_peer.html:292
msgid "Peer List"
msgstr "Lista de Peers"
-#: templates/wireguard/wireguard_manage_peer.html:240
+#: templates/wireguard/wireguard_manage_peer.html:296
msgid "Reactivate"
msgstr "Reativar"
-#: templates/wireguard/wireguard_manage_peer.html:242
+#: templates/wireguard/wireguard_manage_peer.html:298
msgid "Suspend"
msgstr "Suspender"
-#: templates/wireguard/wireguard_manage_peer.html:246
+#: templates/wireguard/wireguard_manage_peer.html:302
msgid "Delete Peer"
msgstr "Excluir Peer"
-#: templates/wireguard/wireguard_manage_peer.html:256
+#: templates/wireguard/wireguard_manage_peer.html:312
msgid "Please type \\\"delete\\\" to remove peer configuration."
msgstr "Por favor, digite \\\"delete\\\" para remover a configuração do peer."
@@ -2944,15 +3100,15 @@ msgstr "Reativar agora"
msgid "Suspend now"
msgstr "Suspender agora"
-#: wireguard_peer/forms.py:140
+#: wireguard_peer/forms.py:139
msgid "Schedule"
msgstr "Agendar"
-#: wireguard_peer/forms.py:144
+#: wireguard_peer/forms.py:143
msgid "Clear Schedule"
msgstr "Limpar Agendamento"
-#: wireguard_peer/forms.py:182
+#: wireguard_peer/forms.py:181
msgid ""
"The difference between suspend and unsuspend times must be at least 5 "
"minutes."
@@ -2960,71 +3116,71 @@ msgstr ""
"A diferença entre os horários de suspensão e reativação deve ser de pelo "
"menos 5 minutos."
-#: wireguard_peer/forms.py:186
+#: wireguard_peer/forms.py:185
msgid "Scheduled suspension time must be at least 10 minutes in the future."
msgstr "O agendamento de suspensão deve ser pelo menos 10 minutos no futuro."
-#: wireguard_peer/forms.py:189
+#: wireguard_peer/forms.py:188
msgid "Scheduled unsuspension time must be at least 10 minutes in the future."
msgstr "O agendamento de reativação deve ser pelo menos 10 minutos no futuro."
-#: wireguard_peer/views.py:58
+#: wireguard_peer/views.py:61
msgid "Disabled WireGuard Peer List"
msgstr "Lista de Peers do WireGuard Desativados"
-#: wireguard_peer/views.py:61
+#: wireguard_peer/views.py:64
msgid "WireGuard Peer List"
msgstr "Lista de Peers do WireGuard"
-#: wireguard_peer/views.py:198
+#: wireguard_peer/views.py:201
msgid "Peer created|Peer created successfully."
msgstr "Peer adicionado|Peer adicionado com sucesso."
-#: wireguard_peer/views.py:203
+#: wireguard_peer/views.py:206
msgid "Error creating peer|No available IP address found for peer creation."
msgstr ""
"Erro ao criar peer|Nenhum endereço IP disponível encontrado para alocação. "
-#: wireguard_peer/views.py:226
+#: wireguard_peer/views.py:229
msgid "Peer deleted|Peer deleted successfully."
msgstr "Peer excluído|Peer excluído com sucesso."
-#: wireguard_peer/views.py:229
+#: wireguard_peer/views.py:232
msgid ""
"Error deleting peer|Invalid confirmation message. Type \"delete\" to confirm."
msgstr ""
"Erro ao excluir peer|Mensagem de confirmação inválida. Digite \"delete\" "
"para confirmar."
-#: wireguard_peer/views.py:231
+#: wireguard_peer/views.py:234
msgid "Peer Configuration: "
msgstr "Configuração do Peer: "
-#: wireguard_peer/views.py:269
+#: wireguard_peer/views.py:279
msgid "Peer updated|Peer updated successfully."
msgstr "Peer atualizado|Peer atualizado com sucesso."
-#: wireguard_peer/views.py:272
+#: wireguard_peer/views.py:282
msgid "Edit Peer"
msgstr "Editar Peer"
-#: wireguard_peer/views.py:274
+#: wireguard_peer/views.py:284
msgid "Edit Peer Name"
msgstr "Editar Nome do Peer"
-#: wireguard_peer/views.py:276
+#: wireguard_peer/views.py:286
msgid "Edit Keepalive"
msgstr "Editar Keepalive"
-#: wireguard_peer/views.py:278
+#: wireguard_peer/views.py:288
msgid "Edit Keys"
msgstr "Editar Chaves"
-#: wireguard_peer/views.py:310
+#: wireguard_peer/views.py:320
msgid "IP address deleted|IP address deleted successfully."
msgstr "Endereço IP excluído|Endereço IP excluído com sucesso."
-#: wireguard_peer/views.py:315
+#: wireguard_peer/views.py:325
msgid ""
"Error deleting IP address|Invalid confirmation message. Type \"delete\" to "
"confirm."
@@ -3032,27 +3188,27 @@ msgstr ""
"Erro ao excluir endereço IP|Mensagem de confirmação inválida. Digite "
"\"delete\" para confirmar."
-#: wireguard_peer/views.py:320
+#: wireguard_peer/views.py:330
msgid "Manage client route"
msgstr "Gerenciar rota do cliente"
-#: wireguard_peer/views.py:322
+#: wireguard_peer/views.py:332
msgid "Manage IP address or Network"
msgstr "Gerenciar Endereço IP ou Rede"
-#: wireguard_peer/views.py:335
+#: wireguard_peer/views.py:345
msgid "IP address updated|IP address updated successfully."
msgstr "Endereço IP atualizado|Endereço IP atualizado com sucesso."
-#: wireguard_peer/views.py:337
+#: wireguard_peer/views.py:347
msgid "IP address added|IP address added successfully."
msgstr "Endereço IP adicionado|Endereço IP adicionado com sucesso."
-#: wireguard_peer/views.py:369
+#: wireguard_peer/views.py:379
msgid "Route template unlinked successfully."
msgstr "Modelo de roteamento desvinculado com sucesso."
-#: wireguard_peer/views.py:379
+#: wireguard_peer/views.py:389
msgid ""
"Cannot apply template: This template does not allow custom routes, but the "
"peer has custom client routes defined."
@@ -3060,15 +3216,15 @@ msgstr ""
"Não é possível aplicar o modelo: Este modelo não permite rotas "
"personalizadas, mas o peer possui rotas de cliente personalizadas definidas."
-#: wireguard_peer/views.py:386
+#: wireguard_peer/views.py:396
msgid "Route template applied successfully."
msgstr "Modelo de roteamento aplicado com sucesso."
-#: wireguard_peer/views.py:419
+#: wireguard_peer/views.py:429
msgid "Peer suspension/unsuspension scheduled successfully."
msgstr "Suspensão/reativação de peer agendada com sucesso."
-#: wireguard_peer/views.py:423
+#: wireguard_peer/views.py:431
msgid ""
"Error scheduling peer suspension/unsuspension. Please correct the errors "
"below."
@@ -3076,27 +3232,47 @@ msgstr ""
"Erro ao agendar a suspensão/reativação do peer. Por favor, corrija os erros "
"abaixo."
-#: wireguard_peer/views.py:430
+#: wireguard_peer/views.py:438
msgid "Schedule cleared successfully."
msgstr "Agendamento limpo com sucesso."
-#: wireguard_peer/views.py:438
+#: wireguard_peer/views.py:452
msgid "Peer suspended successfully."
msgstr "Peer suspenso com sucesso."
-#: wireguard_peer/views.py:446
+#: wireguard_peer/views.py:454
+msgid "Peer suspended, but failed to reload WireGuard interface: "
+msgstr ""
+
+#: wireguard_peer/views.py:464
msgid "Peer reactivated successfully."
msgstr "Peer reativado com sucesso."
-#: wireguard_peer/views.py:450
+#: wireguard_peer/views.py:466
+msgid "Peer reactivated, but failed to reload WireGuard interface: "
+msgstr ""
+
+#: wireguard_peer/views.py:469
msgid "Invalid action."
msgstr "Ação inválida."
-#: wireguard_peer/views.py:455
+#: wireguard_peer/views.py:474
msgid "Suspend / Reactivate Peer"
msgstr "Suspender / Reativar Peer"
-#: wireguard_tools/views.py:181
+#: wireguard_peer/views.py:497
+#, fuzzy
+#| msgid "Schedule Profile deleted successfully."
+msgid "Peer scheduling profile updated successfully."
+msgstr "Perfil de agendamento excluído com sucesso."
+
+#: wireguard_peer/views.py:503
+#, fuzzy
+#| msgid "Delete Schedule Profile"
+msgid "Manage Peer Schedule Profile"
+msgstr "Excluir Perfil de Agendamento"
+
+#: wireguard_tools/views.py:237
msgid ""
"Export successful!|WireGuard configuration files have been exported to /etc/"
"wireguard/."
@@ -3104,7 +3280,7 @@ msgstr ""
"Exportação bem-sucedida!|Os arquivos de configuração do WireGuard foram "
"exportados para /etc/wireguard/."
-#: wireguard_tools/views.py:183
+#: wireguard_tools/views.py:239
msgid ""
"Export successful!|WireGuard configuration files have been exported to /etc/"
"wireguard/. Don't forget to restart the interfaces."
@@ -3112,19 +3288,19 @@ msgstr ""
"Exportação bem-sucedida!|Os arquivos de configuração do WireGuard foram "
"exportados para /etc/wireguard/. Não se esqueça de reiniciar as interfaces."
-#: wireguard_tools/views.py:285
+#: wireguard_tools/views.py:341
msgid "Error reloading"
msgstr "Erro ao recarregar"
-#: wireguard_tools/views.py:297
+#: wireguard_tools/views.py:353
msgid "Error stopping"
msgstr "Erro ao parar"
-#: wireguard_tools/views.py:302
+#: wireguard_tools/views.py:358
msgid "Error starting"
msgstr "Erro ao iniciar"
-#: wireguard_tools/views.py:309
+#: wireguard_tools/views.py:365
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, "
@@ -3134,19 +3310,19 @@ msgstr ""
"Verifique se os peers estão funcionando como esperado. Se você encontrar "
"algum problema, por favor, relate-o."
-#: wireguard_tools/views.py:310
+#: wireguard_tools/views.py:366
msgid "WireGuard reloaded|The WireGuard service has been reloaded."
msgstr "WireGuard recarregado|O serviço WireGuard foi recarregado."
-#: wireguard_tools/views.py:312
+#: wireguard_tools/views.py:368
msgid "WireGuard restarted|The WireGuard service has been restarted."
msgstr "WireGuard reiniciado|O serviço WireGuard foi reiniciado."
-#: wireguard_tools/views.py:315
+#: wireguard_tools/views.py:371
msgid "Errors encountered|Error processing one or more interfaces."
msgstr "Erros encontrados|Erro ao processar uma ou mais interfaces."
-#: wireguard_tools/views.py:318
+#: wireguard_tools/views.py:374
msgid "No interfaces found|No WireGuard interfaces were found to process."
msgstr ""
"Nenhuma interface encontrada|Nenhuma interface WireGuard foi encontrada para "
diff --git a/locale/sk/LC_MESSAGES/django.po b/locale/sk/LC_MESSAGES/django.po
index 14d5d6e..0499e47 100644
--- a/locale/sk/LC_MESSAGES/django.po
+++ b/locale/sk/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2026-02-03 14:49-0300\n"
+"POT-Creation-Date: 2026-02-09 13:51-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -74,7 +74,8 @@ msgstr "Token"
#: templates/wireguard/peer_list/peer_preview_modal.html:79
#: templates/wireguard/wireguard_manage_ip.html:42 user_manager/forms.py:49
#: user_manager/forms.py:180 vpn_invite/forms.py:192 vpn_invite/forms.py:326
-#: wireguard/forms.py:51 wireguard_peer/forms.py:27 wireguard_peer/forms.py:157
+#: wireguard/forms.py:51 wireguard_peer/forms.py:27 wireguard_peer/forms.py:156
+#: wireguard_peer/forms.py:210
msgid "Back"
msgstr "Späť"
@@ -82,7 +83,7 @@ msgstr "Späť"
#: routing_templates/forms.py:37
#: templates/firewall/manage_firewall_rule.html:382
#: templates/firewall/manage_redirect_rule.html:86
-#: templates/scheduler/scheduleprofile_form.html:112
+#: templates/scheduler/scheduleprofile_form.html:127
#: templates/scheduler/scheduleprofile_list.html:29
#: templates/wireguard/peer_list/peer_preview_modal.html:109
#: templates/wireguard/wireguard_manage_ip.html:43 user_manager/forms.py:48
@@ -91,14 +92,15 @@ msgid "Delete"
msgstr "Vymazať"
#: cluster/forms.py:67 cluster/forms.py:124 dns/forms.py:37 dns/forms.py:83
-#: dns/forms.py:134 routing_templates/forms.py:70 scheduler/forms.py:61
+#: dns/forms.py:134 routing_templates/forms.py:70 scheduler/forms.py:102
#: templates/firewall/manage_firewall_rule.html:379
#: templates/firewall/manage_firewall_settings.html:59
#: templates/firewall/manage_redirect_rule.html:84
-#: templates/scheduler/scheduleprofile_form.html:134
+#: templates/scheduler/scheduleprofile_form.html:200
#: templates/wireguard/wireguard_manage_ip.html:41 user_manager/forms.py:98
#: user_manager/forms.py:205 vpn_invite/forms.py:191 vpn_invite/forms.py:325
#: wireguard/forms.py:100 wireguard_peer/forms.py:26
+#: wireguard_peer/forms.py:205
msgid "Save"
msgstr "Uložiť"
@@ -165,7 +167,7 @@ msgstr "Vyžaduje sa aktualizácia workera."
msgid "Access Denied"
msgstr "Prístup zamietnutý"
-#: cluster/views.py:21 templates/template_parts/base_sidebar.html:97
+#: cluster/views.py:21 templates/template_parts/base_sidebar.html:107
msgid "Cluster"
msgstr "Cluster"
@@ -284,46 +286,64 @@ msgstr ""
"názvu, adresy servera, umiestnenia alebo ich kombinácie.\n"
" "
-#: console/views.py:25 console/views.py:57 user_manager/forms.py:16
+#: console/views.py:27 console/views.py:67 user_manager/forms.py:16
msgid "Console"
msgstr "Konzola"
-#: console/views.py:27
+#: console/views.py:29
msgid "iptables list"
msgstr "Zoznam iptables pravidiel"
-#: console/views.py:33
+#: console/views.py:35
msgid "running processes"
msgstr "Bežiace procesy"
-#: console/views.py:36
+#: console/views.py:38
msgid "WireGuard show"
msgstr "Stav WireGuard"
-#: console/views.py:39
+#: console/views.py:40
+msgid "Enhanced filter is enabled. This command is not available."
+msgstr "Rozšírený filter je povolený. Tento príkaz nie je dostupný."
+
+#: console/views.py:46
msgid "Memory usage"
msgstr "Využitie pamäte"
-#: console/views.py:42
+#: console/views.py:49
msgid "Routing table"
msgstr "Smerovacia tabuľka"
-#: console/views.py:54
+#: console/views.py:61
msgid "DNS container test script"
msgstr "Testovací skript DNS kontajnera"
-#: console/views.py:57
+#: console/views.py:64
+#, fuzzy
+#| msgid "WireGuard Status"
+msgid "Flush Wireguard status cache"
+msgstr "Stav WireGuard"
+
+#: console/views.py:67
msgid "Invalid command"
msgstr "Neplatný príkaz"
-#: console/views.py:64
+#: console/views.py:78
+#, fuzzy
+#| msgid "Cluster mode requires WireGuard status cache to be enabled."
+msgid "Flushed WireGuard status cache for worker: "
+msgstr "Režim klastra vyžaduje povolenie vyrovnávacej pamäte stavu WireGuard."
+
+#: console/views.py:83
+#, fuzzy
+#| msgid "Cluster mode requires WireGuard status cache to be enabled."
+msgid "Flushed WireGuard status cache entries: "
+msgstr "Režim klastra vyžaduje povolenie vyrovnávacej pamäte stavu WireGuard."
+
+#: console/views.py:87
msgid "Invalid target"
msgstr "Neplatný cieľ"
-#: console/views.py:69
-msgid "Enhanced filter is enabled. This command is not available."
-msgstr "Rozšírený filter je povolený. Tento príkaz nie je dostupný."
-
#: dns/forms.py:22 wireguard/forms.py:24
msgid "Primary DNS"
msgstr "Primárny DNS"
@@ -769,7 +789,7 @@ msgstr "Trasy od Všetkých Peerov"
msgid "One route per line in CIDR notation."
msgstr "Jedna trasa na riadok v notácii CIDR."
-#: routing_templates/views.py:16 templates/template_parts/base_sidebar.html:79
+#: routing_templates/views.py:16 templates/template_parts/base_sidebar.html:42
msgid "Routing Templates"
msgstr "Smerovacie Šablóny"
@@ -869,100 +889,123 @@ msgstr ""
"tejto možnosti vygenerovať veľký počet pravidiel firewallu.\n"
" "
-#: scheduler/forms.py:14
+#: scheduler/forms.py:17
msgid "Profile Name"
msgstr "Názov profilu"
-#: scheduler/forms.py:38 templates/scheduler/scheduleprofile_form.html:92
+#: scheduler/forms.py:74 templates/scheduler/scheduleprofile_form.html:107
msgid "Start Day"
msgstr "Deň začiatku"
-#: scheduler/forms.py:39 templates/scheduler/scheduleprofile_form.html:93
+#: scheduler/forms.py:75 templates/scheduler/scheduleprofile_form.html:108
msgid "Start Time"
msgstr "Čas začiatku"
-#: scheduler/forms.py:40 templates/scheduler/scheduleprofile_form.html:94
+#: scheduler/forms.py:76 templates/scheduler/scheduleprofile_form.html:109
msgid "End Day"
msgstr "Deň ukončenia"
-#: scheduler/forms.py:41 templates/scheduler/scheduleprofile_form.html:95
+#: scheduler/forms.py:77 templates/scheduler/scheduleprofile_form.html:110
msgid "End Time"
msgstr "Čas ukončenia"
-#: scheduler/models.py:9
+#: scheduler/forms.py:122
+msgid "Unable to validate overlaps: schedule profile is missing."
+msgstr ""
+
+#: scheduler/forms.py:129 scheduler/forms.py:132
+#, fuzzy
+#| msgid ""
+#| "The difference between suspend and unsuspend times must be at least 5 "
+#| "minutes."
+msgid "The minimum duration between start and end must be at least 10 minutes."
+msgstr "Rozdiel medzi časom pozastavenia a reaktivácie musí byť aspoň 5 minút."
+
+#: scheduler/forms.py:150
+#, python-format
+msgid "This time slot overlaps with an existing slot (%(start)s → %(end)s)."
+msgstr ""
+
+#: scheduler/forms.py:160
+#, fuzzy
+#| msgid "Scheduled suspension time must be at least 10 minutes in the future."
+msgid "There must be at least 10 minutes between time slots."
+msgstr "Plánovaný čas pozastavenia musí byť aspoň 10 minút v budúcnosti."
+
+#: scheduler/models.py:11
msgid "Monday"
msgstr "Pondelok"
-#: scheduler/models.py:10
+#: scheduler/models.py:12
msgid "Tuesday"
msgstr "Utorok"
-#: scheduler/models.py:11
+#: scheduler/models.py:13
msgid "Wednesday"
msgstr "Streda"
-#: scheduler/models.py:12
+#: scheduler/models.py:14
msgid "Thursday"
msgstr "Štvrtok"
-#: scheduler/models.py:13
+#: scheduler/models.py:15
msgid "Friday"
msgstr "Piatok"
-#: scheduler/models.py:14
+#: scheduler/models.py:16
msgid "Saturday"
msgstr "Sobota"
-#: scheduler/models.py:15
+#: scheduler/models.py:17
msgid "Sunday"
msgstr "Nedeľa"
-#: scheduler/views.py:26
+#: scheduler/views.py:27
msgid "Edit Schedule Profile"
msgstr "Upraviť profil plánovania"
-#: scheduler/views.py:30
+#: scheduler/views.py:31
msgid "Create Schedule Profile"
msgstr "Vytvoriť profil plánovania"
-#: scheduler/views.py:37
+#: scheduler/views.py:44
msgid "Schedule Profile saved successfully."
msgstr "Profil plánovania bol úspešne uložený."
-#: scheduler/views.py:58
+#: scheduler/views.py:68
msgid "Schedule Profile deleted successfully."
msgstr "Profil plánovania bol úspešne vymazaný."
-#: scheduler/views.py:63
+#: scheduler/views.py:73
msgid "Delete Schedule Profile"
msgstr "Odstrániť profil plánovania"
-#: scheduler/views.py:65
+#: scheduler/views.py:75
#, python-format
msgid "Are you sure you want to delete the profile \"%(name)s\"?"
msgstr "Ste si istí, že chcete odstrániť profil \"%(name)s\"?"
-#: scheduler/views.py:78
+#: scheduler/views.py:88
msgid "Edit Time Interval"
msgstr "Upraviť časový interval"
-#: scheduler/views.py:82
+#: scheduler/views.py:92
msgid "Add Time Interval"
msgstr "Pridať časový interval"
-#: scheduler/views.py:92
+#: scheduler/views.py:102
msgid "Time Interval saved successfully."
msgstr "Časový interval bol úspešne uložený."
-#: scheduler/views.py:115
+#: scheduler/views.py:125
msgid "Time Interval deleted successfully."
msgstr "Časový interval bol úspešne vymazaný."
-#: scheduler/views.py:120
+#: scheduler/views.py:130
msgid "Delete Time Interval"
msgstr "Vymazať časový interval"
-#: scheduler/views.py:122
+#: scheduler/views.py:132
msgid "Are you sure you want to delete this time interval?"
msgstr "Naozaj chcete odstrániť tento časový interval?"
@@ -999,6 +1042,7 @@ msgid "Login again"
msgstr "Prihlásiť sa znovu"
#: templates/cluster/workers_list.html:9 templates/dns/static_host_list.html:72
+#: templates/scheduler/scheduleprofile_form.html:82
#: templates/template_parts/base_sidebar.html:13 vpn_invite/forms.py:78
#: vpn_invite/forms.py:79 vpn_invite/forms.py:80 vpn_invite/forms.py:81
#: vpn_invite/forms.py:82
@@ -1034,8 +1078,8 @@ msgstr "IP zámok povolený"
#: templates/cluster/workers_list.html:47
#: templates/cluster/workers_list.html:54
-#: templates/wireguard/wireguard_manage_peer.html:56
-#: templates/wireguard/wireguard_manage_peer.html:65
+#: templates/wireguard/wireguard_manage_peer.html:112
+#: templates/wireguard/wireguard_manage_peer.html:121
msgid "Not set"
msgstr "Nenastavené"
@@ -1050,7 +1094,7 @@ msgstr "Naposledy videný pred viac ako 10 minútami alebo nikdy videný."
#: templates/cluster/workers_list.html:77
#: templates/dns/static_host_list.html:74
#: templates/routing_templates/list.html:29
-#: templates/scheduler/scheduleprofile_form.html:108
+#: templates/scheduler/scheduleprofile_form.html:123
#: templates/scheduler/scheduleprofile_list.html:25
#: templates/user_manager/list.html:53
#: templates/user_manager/peer_group_list.html:35
@@ -1142,7 +1186,7 @@ msgstr "Rozumiem"
msgid "Clear"
msgstr "Vymazať"
-#: templates/console/console.html:27
+#: templates/console/console.html:28
msgid "Destination Hostname or IP Address"
msgstr "Cieľové meno hostiteľa alebo IP adresa"
@@ -1430,6 +1474,7 @@ msgstr "Typ cieľa"
#: templates/firewall/manage_redirect_rule.html:42
#: templates/firewall/manage_redirect_rule.html:48
+#: templates/scheduler/scheduleprofile_form.html:159
#: templates/vpn_invite/invite_settings.html:17 user_manager/forms.py:178
msgid "Peer"
msgstr "Peer"
@@ -1529,7 +1574,7 @@ msgid "Confirm Delete"
msgstr "Potvrdiť odstránenie"
#: templates/generic_delete_confirmation.html:19
-#: templates/scheduler/scheduleprofile_form.html:137
+#: templates/scheduler/scheduleprofile_form.html:203
msgid "Cancel"
msgstr "Zrušiť"
@@ -1547,31 +1592,87 @@ msgstr "Vizualizácia plánovania"
#: templates/scheduler/scheduleprofile_form.html:70
#: templates/wireguard/apply_route_template.html:44
+#: templates/wireguard/wireguard_manage_peer.html:36
msgid "Active"
msgstr "Aktívne"
#: templates/scheduler/scheduleprofile_form.html:71
+#: templates/scheduler/scheduleprofile_form.html:82
msgid "Inactive"
msgstr "Neaktívne"
-#: templates/scheduler/scheduleprofile_form.html:82
+#: templates/scheduler/scheduleprofile_form.html:78
+#, fuzzy
+#| msgid "Current Active Template:"
+msgid "Current time"
+msgstr "Aktuálna aktívna šablóna:"
+
+#: templates/scheduler/scheduleprofile_form.html:79
+msgid "Becomes active at"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:80
+msgid "Becomes inactive at"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:97
msgid "Time Intervals"
msgstr "Časové intervaly"
-#: templates/scheduler/scheduleprofile_form.html:85
+#: templates/scheduler/scheduleprofile_form.html:100
msgid "Add Interval"
msgstr "Pridať interval"
-#: templates/scheduler/scheduleprofile_form.html:96
+#: templates/scheduler/scheduleprofile_form.html:111
#: templates/scheduler/scheduleprofile_list.html:15
#: templates/wireguard/apply_route_template.html:28
msgid "Actions"
msgstr "Akcie"
-#: templates/scheduler/scheduleprofile_form.html:120
+#: templates/scheduler/scheduleprofile_form.html:135
msgid "No time intervals found."
msgstr "Nenašli sa žiadne časové intervaly."
+#: templates/scheduler/scheduleprofile_form.html:152
+msgid "Linked Peers (Debug)"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:160
+#, fuzzy
+#| msgid "Disabled Peers"
+msgid "Disabled by Schedule"
+msgstr "Zakázané Peery"
+
+#: templates/scheduler/scheduleprofile_form.html:161
+#, fuzzy
+#| msgid "Restart Enabled"
+msgid "Next Enable"
+msgstr "Reštart povolený"
+
+#: templates/scheduler/scheduleprofile_form.html:162
+#, fuzzy
+#| msgid "Disabled"
+msgid "Next Disable"
+msgstr "Zakázané"
+
+#: templates/scheduler/scheduleprofile_form.html:175
+msgid "Yes"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:177
+msgid "No"
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:185
+msgid "No peers linked to this profile."
+msgstr ""
+
+#: templates/scheduler/scheduleprofile_form.html:207
+#, fuzzy
+#| msgid "Show extras"
+msgid "Show Peers"
+msgstr "Zobraziť dodatky"
+
#: templates/scheduler/scheduleprofile_list.html:7
msgid "Schedule Profiles"
msgstr "Profily plánovania"
@@ -1620,20 +1721,20 @@ msgstr "Aktualizovať a reštartovať službu"
msgid "Update and reload service"
msgstr "Aktualizovať a znovu načítať službu"
-#: templates/template_parts/base_sidebar.html:59 user_manager/views.py:74
+#: templates/template_parts/base_sidebar.html:32
+msgid "Scheduler"
+msgstr "Plánovač"
+
+#: templates/template_parts/base_sidebar.html:79 user_manager/views.py:74
msgid "User Manager"
msgstr "Správa používateľov"
-#: templates/template_parts/base_sidebar.html:88
+#: templates/template_parts/base_sidebar.html:98
#: templates/wireguard/peer_list/peer_preview_modal.html:133
#: vpn_invite/views.py:37
msgid "VPN Invite"
msgstr "VPN pozvánka"
-#: templates/template_parts/base_sidebar.html:107
-msgid "Scheduler"
-msgstr "Plánovač"
-
#: templates/user_manager/list.html:9 user_manager/forms.py:20
msgid "User Level"
msgstr "Úroveň používateľa"
@@ -1711,7 +1812,7 @@ msgstr "Nastavenia e-mailu"
msgid "Invite Settings"
msgstr "Nastavenia pozvánky"
-#: templates/wireguard/apply_route_template.html:8 wireguard_peer/views.py:390
+#: templates/wireguard/apply_route_template.html:8 wireguard_peer/views.py:400
msgid "Apply Route Template"
msgstr "Použiť smerovaciu šablónu"
@@ -1755,7 +1856,7 @@ msgstr "Prenos"
#: templates/wireguard/peer_list/peer_data.html:44
#: templates/wireguard/peer_list/script_wireguard_status_update.html:146
-#: wireguard_peer/views.py:112
+#: wireguard_peer/views.py:115
msgid "Primary Server"
msgstr "Primárny server"
@@ -1775,12 +1876,12 @@ msgid "Allowed IPs"
msgstr "Povolené IP adresy"
#: templates/wireguard/peer_list/peer_preview_modal.html:45
-#: templates/wireguard/wireguard_manage_peer.html:79
+#: templates/wireguard/wireguard_manage_peer.html:135
msgid "Peer Traffic"
msgstr "Komunikácia peer"
#: templates/wireguard/peer_list/peer_preview_modal.html:61
-#: templates/wireguard/wireguard_manage_peer.html:96
+#: templates/wireguard/wireguard_manage_peer.html:152
msgid "No traffic history, please wait a few minutes"
msgstr "Žiadna história komunikácie, počkajte niekoľko minút"
@@ -1938,7 +2039,7 @@ msgstr ""
"súbor je zastaraný."
#: templates/wireguard/server_detail.html:17
-#: templates/wireguard/wireguard_manage_peer.html:48 wireguard/forms.py:18
+#: templates/wireguard/wireguard_manage_peer.html:104 wireguard/forms.py:18
#: wireguard_peer/forms.py:52
msgid "Public Key"
msgstr "Verejný kľúč"
@@ -1977,14 +2078,13 @@ msgstr "Vytvoriť inštanciu"
msgid "No WireGuard instances found."
msgstr "Nenašli sa žiadne inštancie WireGuard."
-
#: templates/wireguard/wireguard_manage_ip.html:18
msgid "Enter Allowed IP"
msgstr "Zadajte povolenú IP"
#: templates/wireguard/wireguard_manage_ip.html:34
-#: templates/wireguard/wireguard_manage_peer.html:131
-#: templates/wireguard/wireguard_manage_peer.html:220
+#: templates/wireguard/wireguard_manage_peer.html:187
+#: templates/wireguard/wireguard_manage_peer.html:276
#: wireguard_peer/forms.py:71
msgid "Priority"
msgstr "Priorita"
@@ -1997,65 +2097,122 @@ msgstr "Prosím napíšte \\\"delete\\\" pre odstránenie tejto IP adresy."
msgid "Peer Configuration"
msgstr "Konfigurácia peer"
-#: templates/wireguard/wireguard_manage_peer.html:27 wireguard_peer/forms.py:41
+#: templates/wireguard/wireguard_manage_peer.html:27
+#, fuzzy
+#| msgid "Packet State"
+msgid "Peer State"
+msgstr "Stav paketu"
+
+#: templates/wireguard/wireguard_manage_peer.html:31
+#, fuzzy
+#| msgid "Suspend"
+msgid "Suspended"
+msgstr "Pozastaviť"
+
+#: templates/wireguard/wireguard_manage_peer.html:40
+#, fuzzy
+#| msgid "Schedule"
+msgid "Scheduled suspend"
+msgstr "Naplánovať"
+
+#: templates/wireguard/wireguard_manage_peer.html:43
+msgid "Scheduled unsuspend"
+msgstr ""
+
+#: templates/wireguard/wireguard_manage_peer.html:54
+#, fuzzy
+#| msgid "Clear Schedule"
+msgid "Peer Schedule"
+msgstr "Vymazať plán"
+
+#: templates/wireguard/wireguard_manage_peer.html:60
+#, fuzzy
+#| msgid "Disabled Peers"
+msgid "Disabled by schedule"
+msgstr "Zakázané Peery"
+
+#: templates/wireguard/wireguard_manage_peer.html:62
+#, fuzzy
+#| msgid "Restart Enabled"
+msgid "Next enable"
+msgstr "Reštart povolený"
+
+#: templates/wireguard/wireguard_manage_peer.html:65
+#, fuzzy
+#| msgid "Enabled Peers"
+msgid "Enabled by schedule"
+msgstr "Povolené Peery"
+
+#: templates/wireguard/wireguard_manage_peer.html:67
+#, fuzzy
+#| msgid "Disabled"
+msgid "Next disable"
+msgstr "Zakázané"
+
+#: templates/wireguard/wireguard_manage_peer.html:71
+msgid "No profile associated"
+msgstr ""
+
+#: templates/wireguard/wireguard_manage_peer.html:83 wireguard_peer/forms.py:41
msgid "Persistent Keepalive"
msgstr "Trvalý keepalive"
-#: templates/wireguard/wireguard_manage_peer.html:40
+#: templates/wireguard/wireguard_manage_peer.html:96
msgid "Keys"
msgstr "Kľúče"
-#: templates/wireguard/wireguard_manage_peer.html:51 wireguard/forms.py:17
+#: templates/wireguard/wireguard_manage_peer.html:107 wireguard/forms.py:17
#: wireguard_peer/forms.py:53
msgid "Private Key"
msgstr "Súkromný kľúč"
-#: templates/wireguard/wireguard_manage_peer.html:60 wireguard_peer/forms.py:54
+#: templates/wireguard/wireguard_manage_peer.html:116
+#: wireguard_peer/forms.py:54
msgid "Pre-Shared Key"
msgstr "Vopred zdieľaný kľúč"
-#: templates/wireguard/wireguard_manage_peer.html:110
+#: templates/wireguard/wireguard_manage_peer.html:166
msgid "AllowedIPs at Peer section of wg"
msgstr "Povolené IP adresy v peer sekcii wg"
-#: templates/wireguard/wireguard_manage_peer.html:111
+#: templates/wireguard/wireguard_manage_peer.html:167
msgid "Peer IP Addresses and networks"
msgstr "IP adresy a siete peer"
-#: templates/wireguard/wireguard_manage_peer.html:115
+#: templates/wireguard/wireguard_manage_peer.html:171
msgid "Add IP Address"
msgstr "Pridať IP adresu"
-#: templates/wireguard/wireguard_manage_peer.html:129
-#: templates/wireguard/wireguard_manage_peer.html:218
+#: templates/wireguard/wireguard_manage_peer.html:185
+#: templates/wireguard/wireguard_manage_peer.html:274
msgid "Main ip address"
msgstr "Hlavná IP adresa"
-#: templates/wireguard/wireguard_manage_peer.html:144
+#: templates/wireguard/wireguard_manage_peer.html:200
msgid "AllowedIPs at client configuration file"
msgstr "AllowedIPs v konfiguračnom súbore klienta"
-#: templates/wireguard/wireguard_manage_peer.html:145
+#: templates/wireguard/wireguard_manage_peer.html:201
msgid "Client Routing"
msgstr "Smerovanie klienta"
-#: templates/wireguard/wireguard_manage_peer.html:150
+#: templates/wireguard/wireguard_manage_peer.html:206
msgid "Apply template"
msgstr "Použiť šablónu"
-#: templates/wireguard/wireguard_manage_peer.html:154
+#: templates/wireguard/wireguard_manage_peer.html:210
msgid "Add Client route"
msgstr "Pridať klientskú trasu"
-#: templates/wireguard/wireguard_manage_peer.html:167
+#: templates/wireguard/wireguard_manage_peer.html:223
msgid "Routing Template"
msgstr "Smerovacia šablóna"
-#: templates/wireguard/wireguard_manage_peer.html:180
+#: templates/wireguard/wireguard_manage_peer.html:236
msgid "Template Route"
msgstr "Trasa šablóny"
-#: templates/wireguard/wireguard_manage_peer.html:191
+#: templates/wireguard/wireguard_manage_peer.html:247
msgid ""
"The client is not configured to use the VPN as the default gateway."
"\\n\\nOnly the specific networks listed below are routed through the VPN."
@@ -2069,7 +2226,7 @@ msgstr ""
"musieť manuálne aktualizovať konfiguračný súbor klienta, aby odrážal tieto "
"nastavenia."
-#: templates/wireguard/wireguard_manage_peer.html:194
+#: templates/wireguard/wireguard_manage_peer.html:250
msgid ""
"The client is configured to use the VPN as the default gateway. \\n\\nThis "
"setting routes all client internet traffic through the VPN, enhancing "
@@ -2079,27 +2236,27 @@ msgstr ""
"nastavenie smeruje všetku internetovú komunikáciu klienta cez VPN, čím "
"zvyšuje súkromie a bezpečnosť všetkých pripojení."
-#: templates/wireguard/wireguard_manage_peer.html:202
+#: templates/wireguard/wireguard_manage_peer.html:258
msgid "default route"
msgstr "predvolená trasa"
-#: templates/wireguard/wireguard_manage_peer.html:236
+#: templates/wireguard/wireguard_manage_peer.html:292
msgid "Peer List"
msgstr "Zoznam Peerov"
-#: templates/wireguard/wireguard_manage_peer.html:240
+#: templates/wireguard/wireguard_manage_peer.html:296
msgid "Reactivate"
msgstr "Reaktivovať"
-#: templates/wireguard/wireguard_manage_peer.html:242
+#: templates/wireguard/wireguard_manage_peer.html:298
msgid "Suspend"
msgstr "Pozastaviť"
-#: templates/wireguard/wireguard_manage_peer.html:246
+#: templates/wireguard/wireguard_manage_peer.html:302
msgid "Delete Peer"
msgstr "Vymazať peer"
-#: templates/wireguard/wireguard_manage_peer.html:256
+#: templates/wireguard/wireguard_manage_peer.html:312
msgid "Please type \\\"delete\\\" to remove peer configuration."
msgstr "Prosím napíšte \\\"delete\\\" pre odstránenie konfigurácie peer."
@@ -2859,89 +3016,86 @@ msgstr "Reaktivovať teraz"
msgid "Suspend now"
msgstr "Pozastaviť teraz"
-#: wireguard_peer/forms.py:140
+#: wireguard_peer/forms.py:139
msgid "Schedule"
msgstr "Naplánovať"
-#: wireguard_peer/forms.py:144
+#: wireguard_peer/forms.py:143
msgid "Clear Schedule"
msgstr "Vymazať plán"
-#: wireguard_peer/forms.py:182
+#: wireguard_peer/forms.py:181
msgid ""
"The difference between suspend and unsuspend times must be at least 5 "
"minutes."
-msgstr ""
-"Rozdiel medzi časom pozastavenia a reaktivácie musí byť aspoň 5 minút."
+msgstr "Rozdiel medzi časom pozastavenia a reaktivácie musí byť aspoň 5 minút."
-#: wireguard_peer/forms.py:186
+#: wireguard_peer/forms.py:185
msgid "Scheduled suspension time must be at least 10 minutes in the future."
-msgstr ""
-"Plánovaný čas pozastavenia musí byť aspoň 10 minút v budúcnosti."
+msgstr "Plánovaný čas pozastavenia musí byť aspoň 10 minút v budúcnosti."
-#: wireguard_peer/forms.py:189
+#: wireguard_peer/forms.py:188
msgid "Scheduled unsuspension time must be at least 10 minutes in the future."
-msgstr ""
-"Plánovaný čas reaktivácie musí byť aspoň 10 minút v budúcnosti."
+msgstr "Plánovaný čas reaktivácie musí byť aspoň 10 minút v budúcnosti."
-#: wireguard_peer/views.py:58
+#: wireguard_peer/views.py:61
msgid "Disabled WireGuard Peer List"
msgstr "Zoznam zakázaných WireGuard peerov"
-#: wireguard_peer/views.py:61
+#: wireguard_peer/views.py:64
msgid "WireGuard Peer List"
msgstr "Zoznam WireGuard peerov"
-#: wireguard_peer/views.py:198
+#: wireguard_peer/views.py:201
msgid "Peer created|Peer created successfully."
msgstr "Peer vytvorený|Peer bol úspešne vytvorený."
-#: wireguard_peer/views.py:203
+#: wireguard_peer/views.py:206
msgid "Error creating peer|No available IP address found for peer creation."
msgstr ""
"Chyba pri vytváraní peer|Nebola nájdená dostupná IP adresa pre vytvorenie "
"peer."
-#: wireguard_peer/views.py:226
+#: wireguard_peer/views.py:229
msgid "Peer deleted|Peer deleted successfully."
msgstr "Peer vymazaný|Peer bol úspešne vymazaný."
-#: wireguard_peer/views.py:229
+#: wireguard_peer/views.py:232
msgid ""
"Error deleting peer|Invalid confirmation message. Type \"delete\" to confirm."
msgstr ""
"Chyba pri vymazávaní peer|Neplatná potvrdzovacia správa. Napíšte \"delete\" "
"pre potvrdenie."
-#: wireguard_peer/views.py:231
+#: wireguard_peer/views.py:234
msgid "Peer Configuration: "
msgstr "Konfigurácia peera: "
-#: wireguard_peer/views.py:269
+#: wireguard_peer/views.py:279
msgid "Peer updated|Peer updated successfully."
msgstr "Peer aktualizovaný|Peer bol úspešne aktualizovaný."
-#: wireguard_peer/views.py:272
+#: wireguard_peer/views.py:282
msgid "Edit Peer"
msgstr "Upraviť Peera"
-#: wireguard_peer/views.py:274
+#: wireguard_peer/views.py:284
msgid "Edit Peer Name"
msgstr "Upraviť Názov Peera"
-#: wireguard_peer/views.py:276
+#: wireguard_peer/views.py:286
msgid "Edit Keepalive"
msgstr "Upraviť Keepalive"
-#: wireguard_peer/views.py:278
+#: wireguard_peer/views.py:288
msgid "Edit Keys"
msgstr "Upraviť Kľúče"
-#: wireguard_peer/views.py:310
+#: wireguard_peer/views.py:320
msgid "IP address deleted|IP address deleted successfully."
msgstr "IP adresa vymazaná|IP adresa bola úspešne vymazaná."
-#: wireguard_peer/views.py:315
+#: wireguard_peer/views.py:325
msgid ""
"Error deleting IP address|Invalid confirmation message. Type \"delete\" to "
"confirm."
@@ -2949,27 +3103,27 @@ msgstr ""
"Chyba pri vymazávaní IP adresy|Neplatná potvrdzovacia správa. Napíšte "
"\"delete\" pre potvrdenie."
-#: wireguard_peer/views.py:320
+#: wireguard_peer/views.py:330
msgid "Manage client route"
msgstr "Spravovať klientskú trasu"
-#: wireguard_peer/views.py:322
+#: wireguard_peer/views.py:332
msgid "Manage IP address or Network"
msgstr "Spravovať IP adresu alebo sieť"
-#: wireguard_peer/views.py:335
+#: wireguard_peer/views.py:345
msgid "IP address updated|IP address updated successfully."
msgstr "IP adresa aktualizovaná|IP adresa bola úspešne aktualizovaná."
-#: wireguard_peer/views.py:337
+#: wireguard_peer/views.py:347
msgid "IP address added|IP address added successfully."
msgstr "IP adresa pridaná|IP adresa bola úspešne pridaná."
-#: wireguard_peer/views.py:369
+#: wireguard_peer/views.py:379
msgid "Route template unlinked successfully."
msgstr "Prepojenie so smerovacou šablónou bolo úspešne zrušené."
-#: wireguard_peer/views.py:379
+#: wireguard_peer/views.py:389
msgid ""
"Cannot apply template: This template does not allow custom routes, but the "
"peer has custom client routes defined."
@@ -2977,42 +3131,62 @@ msgstr ""
"Nemožno použiť šablónu: Táto šablóna nepovoľuje vlastné trasy, ale peer má "
"definované vlastné klientske trasy."
-#: wireguard_peer/views.py:386
+#: wireguard_peer/views.py:396
msgid "Route template applied successfully."
msgstr "Smerovacia šablóna bola úspešne použitá."
-#: wireguard_peer/views.py:419
+#: wireguard_peer/views.py:429
msgid "Peer suspension/unsuspension scheduled successfully."
msgstr "Pozastavenie/reaktivácia peera úspešne naplánovaná."
-#: wireguard_peer/views.py:423
+#: wireguard_peer/views.py:431
msgid ""
"Error scheduling peer suspension/unsuspension. Please correct the errors "
"below."
msgstr ""
"Chyba pri plánovaní pozastavenia/reaktivácie peera. Opravte chyby nižšie."
-#: wireguard_peer/views.py:430
+#: wireguard_peer/views.py:438
msgid "Schedule cleared successfully."
msgstr "Plán úspešne vymazaný."
-#: wireguard_peer/views.py:438
+#: wireguard_peer/views.py:452
msgid "Peer suspended successfully."
msgstr "Peer úspešne pozastavený."
-#: wireguard_peer/views.py:446
+#: wireguard_peer/views.py:454
+msgid "Peer suspended, but failed to reload WireGuard interface: "
+msgstr ""
+
+#: wireguard_peer/views.py:464
msgid "Peer reactivated successfully."
msgstr "Peer úspešne reaktivovaný."
-#: wireguard_peer/views.py:450
+#: wireguard_peer/views.py:466
+msgid "Peer reactivated, but failed to reload WireGuard interface: "
+msgstr ""
+
+#: wireguard_peer/views.py:469
msgid "Invalid action."
msgstr "Neplatná akcia."
-#: wireguard_peer/views.py:455
+#: wireguard_peer/views.py:474
msgid "Suspend / Reactivate Peer"
msgstr "Pozastaviť / Reaktivovať Peer"
-#: wireguard_tools/views.py:181
+#: wireguard_peer/views.py:497
+#, fuzzy
+#| msgid "Schedule Profile deleted successfully."
+msgid "Peer scheduling profile updated successfully."
+msgstr "Profil plánovania bol úspešne vymazaný."
+
+#: wireguard_peer/views.py:503
+#, fuzzy
+#| msgid "Delete Schedule Profile"
+msgid "Manage Peer Schedule Profile"
+msgstr "Odstrániť profil plánovania"
+
+#: wireguard_tools/views.py:237
msgid ""
"Export successful!|WireGuard configuration files have been exported to /etc/"
"wireguard/."
@@ -3020,7 +3194,7 @@ msgstr ""
"Export úspešný!|WireGuard konfiguračné súbory boli exportované do /etc/"
"wireguard/."
-#: wireguard_tools/views.py:183
+#: wireguard_tools/views.py:239
msgid ""
"Export successful!|WireGuard configuration files have been exported to /etc/"
"wireguard/. Don't forget to restart the interfaces."
@@ -3028,19 +3202,19 @@ msgstr ""
"Export úspešný!|WireGuard konfiguračné súbory boli exportované do /etc/"
"wireguard/. Nezabudnite reštartovať rozhrania."
-#: wireguard_tools/views.py:285
+#: wireguard_tools/views.py:341
msgid "Error reloading"
msgstr "Chyba pri opätovnom načítaní"
-#: wireguard_tools/views.py:297
+#: wireguard_tools/views.py:353
msgid "Error stopping"
msgstr "Chyba pri zastavovaní"
-#: wireguard_tools/views.py:302
+#: wireguard_tools/views.py:358
msgid "Error starting"
msgstr "Chyba pri spúšťaní"
-#: wireguard_tools/views.py:309
+#: wireguard_tools/views.py:365
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, "
@@ -3050,20 +3224,20 @@ msgstr ""
"reštartované. Dôkladne skontrolujte či peeri fungujú podľa očakávania. Ak "
"nájdete problémy, prosím nahláste ich."
-#: wireguard_tools/views.py:310
+#: wireguard_tools/views.py:366
msgid "WireGuard reloaded|The WireGuard service has been reloaded."
msgstr "WireGuard znovu načítaný|Služba WireGuard bola znovu načítaná."
-#: wireguard_tools/views.py:312
+#: wireguard_tools/views.py:368
msgid "WireGuard restarted|The WireGuard service has been restarted."
msgstr "WireGuard reštartovaný|Služba WireGuard bola reštartovaná."
-#: wireguard_tools/views.py:315
+#: wireguard_tools/views.py:371
msgid "Errors encountered|Error processing one or more interfaces."
msgstr ""
"Vyskytli sa chyby|Chyba pri spracovaní jedného alebo viacerých rozhraní."
-#: wireguard_tools/views.py:318
+#: wireguard_tools/views.py:374
msgid "No interfaces found|No WireGuard interfaces were found to process."
msgstr ""
"Neboli nájdené rozhrania|Neboli nájdené žiadne WireGuard rozhrania na "