diff options
author | Karol Kosek <krkkx@protonmail.com> | 2019-05-15 20:51:06 +0200 |
---|---|---|
committer | Karol Kosek <krkk@krkk.ct8.pl> | 2020-02-22 11:52:12 +0100 |
commit | 4f027cf952e2458d2301236d43b4c9fbcdba345b (patch) | |
tree | b2333184bf54f031a35704069c650599a9909d24 /lib/events/roommemberevent.cpp | |
parent | d3ca82b9d7477a35e7580f2d6ce579dcbf791d07 (diff) | |
download | libquotient-4f027cf952e2458d2301236d43b4c9fbcdba345b.tar.gz libquotient-4f027cf952e2458d2301236d43b4c9fbcdba345b.zip |
RoomMemberEvent: add isRejectedInvite(), isBan(), and isUnban()
Diffstat (limited to 'lib/events/roommemberevent.cpp')
-rw-r--r-- | lib/events/roommemberevent.cpp | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/lib/events/roommemberevent.cpp b/lib/events/roommemberevent.cpp index d4b2be45..35cbdb3a 100644 --- a/lib/events/roommemberevent.cpp +++ b/lib/events/roommemberevent.cpp @@ -79,6 +79,12 @@ bool RoomMemberEvent::isInvite() const return membership() == MembershipType::Invite && changesMembership(); } +bool RoomMemberEvent::isRejectedInvite() const +{ + return membership() == MembershipType::Leave && prevContent() + && prevContent()->membership == MembershipType::Invite; +} + bool RoomMemberEvent::isJoin() const { return membership() == MembershipType::Join && changesMembership(); @@ -88,7 +94,19 @@ bool RoomMemberEvent::isLeave() const { return membership() == MembershipType::Leave && prevContent() && prevContent()->membership != membership() - && prevContent()->membership != MembershipType::Ban; + && prevContent()->membership != MembershipType::Ban + && prevContent()->membership != MembershipType::Invite; +} + +bool RoomMemberEvent::isBan() const +{ + return membership() == MembershipType::Ban && changesMembership(); +} + +bool RoomMemberEvent::isUnban() const +{ + return membership() == MembershipType::Leave && prevContent() + && prevContent()->membership == MembershipType::Ban; } bool RoomMemberEvent::isRename() const |