feat: introduce "Create Default Peer" flag for interfaces (#513)

This commit is contained in:
Christoph Haas
2026-01-06 00:16:08 +01:00
parent 1b56acac87
commit 2a9d5e3ea8
14 changed files with 135 additions and 24 deletions

View File

@@ -83,6 +83,7 @@ watch(() => props.visible, async (newValue, oldValue) => {
formData.value.Identifier = interfaces.Prepared.Identifier
formData.value.DisplayName = interfaces.Prepared.DisplayName
formData.value.Mode = interfaces.Prepared.Mode
formData.value.CreateDefaultPeer = interfaces.Prepared.CreateDefaultPeer
formData.value.Backend = interfaces.Prepared.Backend
formData.value.PublicKey = interfaces.Prepared.PublicKey
@@ -122,6 +123,7 @@ watch(() => props.visible, async (newValue, oldValue) => {
formData.value.Identifier = selectedInterface.value.Identifier
formData.value.DisplayName = selectedInterface.value.DisplayName
formData.value.Mode = selectedInterface.value.Mode
formData.value.CreateDefaultPeer = selectedInterface.value.CreateDefaultPeer
formData.value.Backend = selectedInterface.value.Backend
formData.value.PublicKey = selectedInterface.value.PublicKey
@@ -487,6 +489,10 @@ async function del() {
<input v-model="formData.Disabled" class="form-check-input" type="checkbox">
<label class="form-check-label">{{ $t('modals.interface-edit.disabled.label') }}</label>
</div>
<div class="form-check form-switch" v-if="formData.Mode==='server' && settings.Setting('CreateDefaultPeer')">
<input v-model="formData.CreateDefaultPeer" class="form-check-input" type="checkbox">
<label class="form-check-label">{{ $t('modals.interface-edit.create-default-peer.label') }}</label>
</div>
<div class="form-check form-switch" v-if="formData.Backend==='local'">
<input v-model="formData.SaveConfig" checked="" class="form-check-input" type="checkbox">
<label class="form-check-label">{{ $t('modals.interface-edit.save-config.label') }}</label>

View File

@@ -4,6 +4,7 @@ export function freshInterface() {
Disabled: false,
DisplayName: "",
Identifier: "",
CreateDefaultPeer: false,
Mode: "server",
Backend: "local",

View File

@@ -469,6 +469,9 @@
"disabled": {
"label": "Schnittstelle deaktiviert"
},
"create-default-peer": {
"label": "Peer für neue Benutzer automatisch erstellen"
},
"save-config": {
"label": "wg-quick Konfiguration automatisch speichern"
},

View File

@@ -469,6 +469,9 @@
"disabled": {
"label": "Interface Disabled"
},
"create-default-peer": {
"label": "Create default peer for new users"
},
"save-config": {
"label": "Automatically save wg-quick config"
},