diff options
author | Kitsune Ral <Kitsune-Ral@users.sf.net> | 2020-03-09 17:20:17 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-09 17:20:17 +0100 |
commit | ef81c79c4e7d24d63d1520ddefef347c11052235 (patch) | |
tree | b2333184bf54f031a35704069c650599a9909d24 | |
parent | d3ca82b9d7477a35e7580f2d6ce579dcbf791d07 (diff) | |
parent | 4f027cf952e2458d2301236d43b4c9fbcdba345b (diff) | |
download | libquotient-ef81c79c4e7d24d63d1520ddefef347c11052235.tar.gz libquotient-ef81c79c4e7d24d63d1520ddefef347c11052235.zip |
Merge pull request #320 from krkk/roommemberevent-types
RoomMemberEvent: add isRejectedInvite(), isBan() and isUnban()
-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; |