mirror of
https://gitlab.com/allianceauth/allianceauth.git
synced 2025-07-12 14:00:17 +02:00
Dont fail on unknown groups, simply remove them.
This commit is contained in:
parent
6b932b1188
commit
1cae20fe5f
@ -588,16 +588,17 @@ class DiscordClient:
|
|||||||
return None # User is no longer a member
|
return None # User is no longer a member
|
||||||
guild_roles = RolesSet(self.guild_roles(guild_id=guild_id))
|
guild_roles = RolesSet(self.guild_roles(guild_id=guild_id))
|
||||||
logger.debug('Current guild roles: %s', guild_roles.ids())
|
logger.debug('Current guild roles: %s', guild_roles.ids())
|
||||||
|
_roles = set(member_info.roles)
|
||||||
if not guild_roles.has_roles(member_info.roles):
|
if not guild_roles.has_roles(member_info.roles):
|
||||||
guild_roles = RolesSet(
|
guild_roles = RolesSet(
|
||||||
self.guild_roles(guild_id=guild_id, use_cache=False)
|
self.guild_roles(guild_id=guild_id, use_cache=False)
|
||||||
)
|
)
|
||||||
if not guild_roles.has_roles(member_info.roles):
|
if not guild_roles.has_roles(member_info.roles):
|
||||||
role_ids = set(member_info.roles).difference(guild_roles.ids())
|
role_ids = set(member_info.roles).difference(guild_roles.ids())
|
||||||
raise RuntimeError(
|
logger.warning(f'Discord user {user_id} has unknown roles: {role_ids}')
|
||||||
f'Discord user {user_id} has unknown roles: {role_ids}'
|
for _r in role_ids:
|
||||||
)
|
_roles.remove(_r)
|
||||||
return guild_roles.subset(member_info.roles)
|
return guild_roles.subset(_roles)
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def _is_member_unknown_error(cls, r: requests.Response) -> bool:
|
def _is_member_unknown_error(cls, r: requests.Response) -> bool:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user