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 | |
parent | d3ca82b9d7477a35e7580f2d6ce579dcbf791d07 (diff) | |
download | libquotient-4f027cf952e2458d2301236d43b4c9fbcdba345b.tar.gz libquotient-4f027cf952e2458d2301236d43b4c9fbcdba345b.zip |
RoomMemberEvent: add isRejectedInvite(), isBan(), and isUnban()
Diffstat (limited to 'lib/events')
-rw-r--r-- | lib/events/roommemberevent.cpp | 20 | ||||
-rw-r--r-- | lib/events/roommemberevent.h | 3 |
2 files changed, 22 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 diff --git a/lib/events/roommemberevent.h b/lib/events/roommemberevent.h index 0ca439e1..783b8207 100644 --- a/lib/events/roommemberevent.h +++ b/lib/events/roommemberevent.h @@ -88,7 +88,10 @@ public: QUrl avatarUrl() const { return content().avatarUrl; } QString reason() const { return content().reason; } bool changesMembership() const; + bool isBan() const; + bool isUnban() const; bool isInvite() const; + bool isRejectedInvite() const; bool isJoin() const; bool isLeave() const; bool isRename() const; |