From 4f027cf952e2458d2301236d43b4c9fbcdba345b Mon Sep 17 00:00:00 2001 From: Karol Kosek Date: Wed, 15 May 2019 20:51:06 +0200 Subject: RoomMemberEvent: add isRejectedInvite(), isBan(), and isUnban() --- lib/events/roommemberevent.cpp | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'lib/events/roommemberevent.cpp') 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 -- cgit v1.2.3