Clean
This commit is contained in:
parent
6b7b158000
commit
6ab8570b11
|
@ -388,6 +388,7 @@ extension MessageReceiver {
|
|||
let _ = PushNotificationAPI.performOperation(.unsubscribe, for: groupPublicKey, publicKey: userPublicKey)
|
||||
}
|
||||
// Generate and distribute a new encryption key pair if needed
|
||||
// NOTE: If we're the admin we can be sure at this point that we weren't removed
|
||||
let isCurrentUserAdmin = group.groupAdminIds.contains(getUserHexEncodedPublicKey())
|
||||
if isCurrentUserAdmin {
|
||||
do {
|
||||
|
|
|
@ -150,6 +150,7 @@ extension MessageSender {
|
|||
|
||||
public static func removeMembers(_ membersToRemove: Set<String>, to groupPublicKey: String, using transaction: YapDatabaseReadWriteTransaction) throws {
|
||||
// Get the group, check preconditions & prepare
|
||||
let userPublicKey = getUserHexEncodedPublicKey()
|
||||
let groupID = LKGroupUtilities.getEncodedClosedGroupIDAsData(groupPublicKey)
|
||||
let threadID = TSGroupThread.threadId(fromGroupId: groupID)
|
||||
guard let thread = TSGroupThread.fetch(uniqueId: threadID, transaction: transaction) else {
|
||||
|
@ -160,9 +161,13 @@ extension MessageSender {
|
|||
SNLog("Invalid closed group update.")
|
||||
throw Error.invalidClosedGroupUpdate
|
||||
}
|
||||
guard !membersToRemove.contains(userPublicKey) else {
|
||||
SNLog("Invalid closed group update.")
|
||||
throw Error.invalidClosedGroupUpdate
|
||||
}
|
||||
let group = thread.groupModel
|
||||
let members = Set(group.groupMemberIds).subtracting(membersToRemove)
|
||||
let isCurrentUserAdmin = group.groupAdminIds.contains(getUserHexEncodedPublicKey())
|
||||
let isCurrentUserAdmin = group.groupAdminIds.contains(userPublicKey)
|
||||
// Send the update to the group and generate + distribute a new encryption key pair if needed
|
||||
let closedGroupControlMessage = ClosedGroupControlMessage(kind: .membersRemoved(members: membersToRemove.map { Data(hex: $0) }))
|
||||
if isCurrentUserAdmin {
|
||||
|
|
Loading…
Reference in New Issue