Portal-Login: Mitarbeiter kommen ins Admin-Panel, Admin-Label bleibt WOMS-Rolle
Bisher liess /api/auth/login nur Appwrite-User mit dem Label "admin" in die Admin-Ansicht; alle anderen fielen in den Kunden-Login und bekamen "Kein Kundenkonto fuer diesen Login gefunden". Mitarbeiter ohne Admin-Haken (z.B. nico@webklar.com) kamen damit nicht auf /admin.html. Jetzt gilt: Wer in der employees-Collection steht, ist Backoffice-Nutzer. Das Label "admin" ist nur noch die WOMS-Adminrolle (Mitarbeiterverwaltung) und wird als isAdmin-Flag in der Portal-Session bzw. in den Preview-Token-Labels mitgefuehrt - inklusive "Als Kunde ansehen" und zurueck. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -408,6 +408,7 @@ router.post('/view-as/:customerId', async (req, res) => {
|
||||
setPortalSession(res, {
|
||||
role: 'admin',
|
||||
viewAs: true,
|
||||
isAdmin: session.isAdmin,
|
||||
appwriteUserId: session.appwriteUserId,
|
||||
adminName: session.adminName || session.name || 'Admin',
|
||||
adminEmail: session.adminEmail || session.email || '',
|
||||
@@ -425,6 +426,7 @@ router.post('/exit-view-as', (req, res) => {
|
||||
const session = parsePortalSession(req) || req.session
|
||||
setPortalSession(res, {
|
||||
role: 'admin',
|
||||
isAdmin: session.isAdmin,
|
||||
appwriteUserId: session.appwriteUserId,
|
||||
name: session.adminName || session.name || 'Admin',
|
||||
email: session.adminEmail || session.email || '',
|
||||
|
||||
Reference in New Issue
Block a user