diff --git a/app/api/roles/route.ts b/app/api/roles/route.ts index 8a0996c2..725d8cdc 100644 --- a/app/api/roles/route.ts +++ b/app/api/roles/route.ts @@ -63,13 +63,13 @@ export async function GET() { const roles = await response.json(); - // Filter out system roles + // Filter out only Keycloak system roles const filteredRoles = roles.filter((role: any) => !role.name.startsWith('default-roles-') && - role.name !== 'offline_access' && - role.name !== 'uma_authorization' + !['offline_access', 'uma_authorization'].includes(role.name) ); + console.log("Available roles:", filteredRoles); return NextResponse.json(filteredRoles); } catch (error) { console.error("Error fetching roles:", error); diff --git a/components/users/users-table.tsx b/components/users/users-table.tsx index c4f132ad..7f994de6 100644 --- a/components/users/users-table.tsx +++ b/components/users/users-table.tsx @@ -420,47 +420,51 @@ export function UsersTable({ userRole = [] }: UsersTableProps) { - + - Nouvel utilisateur + New User -
-
- - setFormData(prev => ({ ...prev, username: e.target.value.trim() }))} - required - /> + +
+
+ + setFormData(prev => ({ ...prev, username: e.target.value.trim() }))} + required + /> +
+
+ + setFormData(prev => ({ ...prev, email: e.target.value.trim() }))} + required + /> +
-
- - setFormData(prev => ({ ...prev, firstName: e.target.value.trim() }))} - required - /> -
-
- - setFormData(prev => ({ ...prev, lastName: e.target.value.trim() }))} - required - /> -
-
- - setFormData(prev => ({ ...prev, email: e.target.value.trim() }))} - required - /> +
+
+ + setFormData(prev => ({ ...prev, firstName: e.target.value.trim() }))} + required + /> +
+
+ + setFormData(prev => ({ ...prev, lastName: e.target.value.trim() }))} + required + /> +
@@ -474,7 +478,7 @@ export function UsersTable({ userRole = [] }: UsersTableProps) {
-
+
{roles.map((role) => (
- +
))}
- +