Fix inaccurate error message while trying to ban or unban a user with the same or higher PL (#16205)
This commit is contained in:
parent
40901af5e0
commit
692ee2af19
|
@ -0,0 +1 @@
|
||||||
|
Fix inaccurate error message while attempting to ban or unban a user with the same or higher PL by spliting the conditional statements. Contributed by @leviosacz.
|
|
@ -669,12 +669,18 @@ def _is_membership_change_allowed(
|
||||||
errcode=Codes.INSUFFICIENT_POWER,
|
errcode=Codes.INSUFFICIENT_POWER,
|
||||||
)
|
)
|
||||||
elif Membership.BAN == membership:
|
elif Membership.BAN == membership:
|
||||||
if user_level < ban_level or user_level <= target_level:
|
if user_level < ban_level:
|
||||||
raise UnstableSpecAuthError(
|
raise UnstableSpecAuthError(
|
||||||
403,
|
403,
|
||||||
"You don't have permission to ban",
|
"You don't have permission to ban",
|
||||||
errcode=Codes.INSUFFICIENT_POWER,
|
errcode=Codes.INSUFFICIENT_POWER,
|
||||||
)
|
)
|
||||||
|
elif user_level <= target_level:
|
||||||
|
raise UnstableSpecAuthError(
|
||||||
|
403,
|
||||||
|
"You don't have permission to ban this user",
|
||||||
|
errcode=Codes.INSUFFICIENT_POWER,
|
||||||
|
)
|
||||||
elif room_version.knock_join_rule and Membership.KNOCK == membership:
|
elif room_version.knock_join_rule and Membership.KNOCK == membership:
|
||||||
if join_rule != JoinRules.KNOCK and (
|
if join_rule != JoinRules.KNOCK and (
|
||||||
not room_version.knock_restricted_join_rule
|
not room_version.knock_restricted_join_rule
|
||||||
|
|
Loading…
Reference in New Issue