diff --git a/src/pages/AdminAuditLog.tsx b/src/pages/AdminAuditLog.tsx index 7f165e7..53a7235 100644 --- a/src/pages/AdminAuditLog.tsx +++ b/src/pages/AdminAuditLog.tsx @@ -476,11 +476,8 @@ export default function AdminAuditLog() { setPage(0); }, []); - // Filter status entries client-side (status is derived from details, not a backend field) - const filteredEntries = useMemo(() => { - if (!appliedFilters.status) return entries; - return entries.filter((entry) => entry.status === appliedFilters.status); - }, [entries, appliedFilters.status]); + // Status is filtered server-side via query params + const filteredEntries = entries; const hasActiveFilters = useMemo(() => { return ( diff --git a/src/pages/AdminPolicies.tsx b/src/pages/AdminPolicies.tsx index 1b92e9b..664f069 100644 --- a/src/pages/AdminPolicies.tsx +++ b/src/pages/AdminPolicies.tsx @@ -430,9 +430,6 @@ export default function AdminPolicies() { const openEditModal = useCallback((policy: AccessPolicy) => { const parsed = parseConditions(policy.conditions); - // Determine the role_id from conditions if present - const roleId = typeof policy.conditions.role_id === 'number' ? policy.conditions.role_id : null; - const actions = Array.isArray(policy.actions) ? policy.actions : []; setEditingPolicy(policy); @@ -442,7 +439,7 @@ export default function AdminPolicies() { effect: policy.effect, resource: policy.resource, actions, - role_id: roleId, + role_id: policy.role_id ?? null, priority: policy.priority, conditions: { time_range: parsed.time_range ?? { start: '09:00', end: '18:00' }, @@ -500,10 +497,6 @@ export default function AdminPolicies() { formData.conditionsEnabled, ); - if (formData.role_id !== null) { - conditionsPayload.role_id = formData.role_id; - } - if (editingPolicy) { const payload: UpdatePolicyPayload = { name: formData.name.trim(), @@ -586,10 +579,10 @@ export default function AdminPolicies() { ); const getRoleName = useCallback( - (conditions: Record): string => { - const roleId = typeof conditions.role_id === 'number' ? conditions.role_id : null; - if (roleId === null) return t('admin.policies.global'); - const role = rolesMap.get(roleId); + (policy: AccessPolicy): string => { + if (policy.role_name) return policy.role_name; + if (policy.role_id === null) return t('admin.policies.global'); + const role = rolesMap.get(policy.role_id); return role?.name ?? t('admin.policies.unknownRole'); }, [rolesMap, t], @@ -613,7 +606,7 @@ export default function AdminPolicies() {

{t('admin.policies.subtitle')}

- + - +