v0.5.2: multi-company, isAdmin fix, appVersion, docs
This commit is contained in:
+12
-6
@@ -243,13 +243,19 @@ function verifyOidcToken(token) {
|
||||
}
|
||||
|
||||
function userFromPayload(payload) {
|
||||
const clientId = payload.ClientID || payload.client_id || payload.preferred_username || 'UNKNOWN';
|
||||
// clientid может быть "WZ01325" или "WZ01325, WZ54321" (ТЗ-плюс §6.1)
|
||||
const rawClientId = payload.ClientID || payload.client_id || payload.preferred_username || 'UNKNOWN';
|
||||
const allClientIds = rawClientId.split(',').map(s => s.trim()).filter(Boolean);
|
||||
const activeClientId = allClientIds[0] || 'UNKNOWN';
|
||||
|
||||
return {
|
||||
email: payload.email || payload.login || 'unknown',
|
||||
clientId,
|
||||
companyId: payload.company_id || payload.sub || null,
|
||||
companyName: payload.company_name || clientId,
|
||||
isAdmin: clientId === ADMIN_CLIENT_ID,
|
||||
email: payload.email || payload.login || 'unknown',
|
||||
clientId: activeClientId, // активная компания (первая в списке)
|
||||
allClientIds, // все компании пользователя (массив)
|
||||
activeClientId, // дубль для ясности
|
||||
companyId: payload.company_id || payload.sub || null,
|
||||
companyName: payload.company_name || activeClientId,
|
||||
isAdmin: activeClientId === ADMIN_CLIENT_ID,
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user