Merge pull request #13533 from TheRauch1/main

feat: handle user OAuth groups as list or string
This commit is contained in:
Tim Jaeryang Baek 2025-05-06 09:57:14 +04:00 committed by GitHub
commit ed210517c2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -158,7 +158,13 @@ class OAuthManager:
nested_claims = oauth_claim.split(".") nested_claims = oauth_claim.split(".")
for nested_claim in nested_claims: for nested_claim in nested_claims:
claim_data = claim_data.get(nested_claim, {}) claim_data = claim_data.get(nested_claim, {})
user_oauth_groups = claim_data if isinstance(claim_data, list) else []
if isinstance(claim_data, list):
user_oauth_groups = claim_data
elif isinstance(claim_data, str):
user_oauth_groups = [claim_data]
else:
user_oauth_groups = []
user_current_groups: list[GroupModel] = Groups.get_groups_by_member_id(user.id) user_current_groups: list[GroupModel] = Groups.get_groups_by_member_id(user.id)
all_available_groups: list[GroupModel] = Groups.get_groups() all_available_groups: list[GroupModel] = Groups.get_groups()