feat(customer): allow changing an already-registered NetBird API token
The per-customer Auto-Updates card only showed the token input when no token was registered yet, so there was no way to replace one once set (e.g. rotating it manually). Adds a "Change token" link that reveals the same input/save flow at any time.
This commit is contained in:
+16
-1
@@ -625,12 +625,27 @@ async function loadCustomerNetbirdUpdates(id, hasToken) {
|
|||||||
<button class="btn btn-outline-secondary btn-sm" onclick="syncCustomerNetbirdFromMaster(${id})">${t('customer.nbuSyncMaster')}</button>
|
<button class="btn btn-outline-secondary btn-sm" onclick="syncCustomerNetbirdFromMaster(${id})">${t('customer.nbuSyncMaster')}</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id="nbu-result" class="small mt-2"></div>`;
|
<div id="nbu-result" class="small mt-2"></div>
|
||||||
|
<div class="mt-2">
|
||||||
|
<a href="#" class="small" onclick="event.preventDefault(); showChangeNetbirdToken(${id})">${t('customer.nbuChangeToken')}</a>
|
||||||
|
</div>
|
||||||
|
<div id="nbu-change-token-area" class="mt-2 d-none"></div>`;
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
container.innerHTML = `<div class="alert alert-warning py-2 small mb-0">${esc(err.message)}</div>`;
|
container.innerHTML = `<div class="alert alert-warning py-2 small mb-0">${esc(err.message)}</div>`;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function showChangeNetbirdToken(id) {
|
||||||
|
const area = document.getElementById('nbu-change-token-area');
|
||||||
|
area.classList.remove('d-none');
|
||||||
|
area.innerHTML = `
|
||||||
|
<div class="input-group input-group-sm">
|
||||||
|
<input type="text" class="form-control" id="nbu-token-input" placeholder="${t('customer.nbuTokenPlaceholder')}">
|
||||||
|
<button class="btn btn-outline-primary" onclick="saveCustomerNetbirdToken(${id})">${t('customer.nbuSaveToken')}</button>
|
||||||
|
</div>
|
||||||
|
<div id="nbu-token-result" class="small mt-1"></div>`;
|
||||||
|
}
|
||||||
|
|
||||||
async function saveCustomerNetbirdToken(id) {
|
async function saveCustomerNetbirdToken(id) {
|
||||||
const input = document.getElementById('nbu-token-input');
|
const input = document.getElementById('nbu-token-input');
|
||||||
const resultEl = document.getElementById('nbu-token-result');
|
const resultEl = document.getElementById('nbu-token-result');
|
||||||
|
|||||||
@@ -97,6 +97,7 @@
|
|||||||
"nbuTokenPlaceholder": "Personal Access Token einfügen…",
|
"nbuTokenPlaceholder": "Personal Access Token einfügen…",
|
||||||
"nbuSaveToken": "Prüfen & Speichern",
|
"nbuSaveToken": "Prüfen & Speichern",
|
||||||
"nbuTokenSaved": "Token gespeichert.",
|
"nbuTokenSaved": "Token gespeichert.",
|
||||||
|
"nbuChangeToken": "Token ändern",
|
||||||
"nbuVersion": "Client-Version",
|
"nbuVersion": "Client-Version",
|
||||||
"nbuDisabled": "Deaktiviert",
|
"nbuDisabled": "Deaktiviert",
|
||||||
"nbuLatest": "Neueste Version",
|
"nbuLatest": "Neueste Version",
|
||||||
|
|||||||
@@ -97,6 +97,7 @@
|
|||||||
"nbuTokenPlaceholder": "Paste Personal Access Token…",
|
"nbuTokenPlaceholder": "Paste Personal Access Token…",
|
||||||
"nbuSaveToken": "Verify & Save",
|
"nbuSaveToken": "Verify & Save",
|
||||||
"nbuTokenSaved": "Token saved.",
|
"nbuTokenSaved": "Token saved.",
|
||||||
|
"nbuChangeToken": "Change token",
|
||||||
"nbuVersion": "Client version",
|
"nbuVersion": "Client version",
|
||||||
"nbuDisabled": "Disabled",
|
"nbuDisabled": "Disabled",
|
||||||
"nbuLatest": "Latest version",
|
"nbuLatest": "Latest version",
|
||||||
|
|||||||
Reference in New Issue
Block a user