Globe-Zugang: Checkbox im User-Management

Neue Spalte "Globe" in der Nutzertabelle mit Toggle-Checkbox.
API-Endpoint PUT /api/users/{id}/globe-access.
Steuert das globe_access Feld in der geteilten DB.
Dieser Commit ist enthalten in:
Claude Dev
2026-03-24 11:57:08 +01:00
Ursprung 5a7c5f8779
Commit 0e13dcb9a4
3 geänderte Dateien mit 30 neuen und 1 gelöschten Zeilen

Datei anzeigen

@@ -234,7 +234,7 @@ async function loadOrgUsers(orgId) {
const tbody = document.getElementById("userTable");
if (users.length === 0) {
tbody.innerHTML = '<tr><td colspan="4" class="text-muted">Keine Nutzer</td></tr>';
tbody.innerHTML = '<tr><td colspan="5" class="text-muted">Keine Nutzer</td></tr>';
return;
}
tbody.innerHTML = users.map(u => `
@@ -247,6 +247,7 @@ async function loadOrgUsers(orgId) {
</select>
</td>
<td><span class="badge badge-${u.is_active ? 'active' : 'inactive'}">${u.is_active ? "Aktiv" : "Inaktiv"}</span></td>
<td style="text-align:center"><input type="checkbox" ${u.globe_access ? "checked" : ""} onchange="toggleGlobeAccess(${u.id})" title="Globe-Zugang"></td>
<td>
${u.is_active
? `<button class="btn btn-secondary btn-small" onclick="toggleUser(${u.id}, false)">Deaktivieren</button>`
@@ -279,6 +280,15 @@ async function toggleUser(userId, activate) {
}
}
async function toggleGlobeAccess(userId) {
try {
await API.put("/api/users/" + userId + "/globe-access");
} catch (err) {
alert(err.message);
if (currentOrgId) loadOrgUsers(currentOrgId);
}
}
function confirmDeleteUser(userId, email) {
showConfirm(
"Nutzer löschen",