pull/19/head
Niels Andriesse 6 years ago
parent 9ab3e77243
commit dac9b28162

@ -204,12 +204,12 @@ typedef NS_ENUM(NSInteger, TSThreadFriendRequestStatus) {
/**
Remove any outgoing friend request message which failed to send
*/
- (void)removeOutgoingFriendRequestMessagesWithTransaction:(YapDatabaseReadWriteTransaction *)transaction;
- (void)removeOldOutgoingFriendRequestMessagesWithTransaction:(YapDatabaseReadWriteTransaction *)transaction;
/**
Remove any old incoming friend request message that is still pending
*/
- (void)removeIncomingFriendRequestMessagesWithTransaction:(YapDatabaseReadWriteTransaction *)transaction;
- (void)removeOldIncomingFriendRequestMessagesWithTransaction:(YapDatabaseReadWriteTransaction *)transaction;
@end

@ -708,17 +708,17 @@ ConversationColorName const kConversationColorName_Default = ConversationColorNa
#pragma mark - Loki Friend Request Handling
- (void)removeOutgoingFriendRequestMessagesWithTransaction:(YapDatabaseReadWriteTransaction *)transaction
- (void)removeOldOutgoingFriendRequestMessagesWithTransaction:(YapDatabaseReadWriteTransaction *)transaction
{
[self removeFriendRequestMessages:OWSInteractionType_OutgoingMessage withTransaction:transaction];
[self removeOldFriendRequestMessages:OWSInteractionType_OutgoingMessage withTransaction:transaction];
}
- (void)removeIncomingFriendRequestMessagesWithTransaction:(YapDatabaseReadWriteTransaction *)transaction
- (void)removeOldIncomingFriendRequestMessagesWithTransaction:(YapDatabaseReadWriteTransaction *)transaction
{
[self removeFriendRequestMessages:OWSInteractionType_IncomingMessage withTransaction:transaction];
[self removeOldFriendRequestMessages:OWSInteractionType_IncomingMessage withTransaction:transaction];
}
- (void)removeFriendRequestMessages:(OWSInteractionType)interactionType withTransaction:(YapDatabaseReadWriteTransaction *)transaction
- (void)removeOldFriendRequestMessages:(OWSInteractionType)interactionType withTransaction:(YapDatabaseReadWriteTransaction *)transaction
{
// If we're friends with the person then we don't need to remove any friend request messages
if (self.friendRequestStatus == TSThreadFriendRequestStatusFriends) { return; }

@ -1529,7 +1529,7 @@ NS_ASSUME_NONNULL_BEGIN
// Remove any old incoming messages
if (incomingMessage.isFriendRequest) {
[thread removeIncomingFriendRequestMessagesWithTransaction:transaction];
[thread removeOldIncomingFriendRequestMessagesWithTransaction:transaction];
}
// Any messages sent from the current user - from this device or another - should be automatically marked as read.

@ -1129,7 +1129,7 @@ NSString *const OWSMessageSenderRateLimitedException = @"RateLimitedException";
if (messageType == TSFriendRequestMessageType) {
[self.dbConnection readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) {
[message.thread saveFriendRequestStatus:TSThreadFriendRequestStatusRequestSent withTransaction:transaction];
[message.thread removeOutgoingFriendRequestMessagesWithTransaction:transaction];
[message.thread removeOldOutgoingFriendRequestMessagesWithTransaction:transaction];
NSTimeInterval expirationInterval = 72 * kHourInterval;
NSDate *expirationDate = [[NSDate new] dateByAddingTimeInterval:expirationInterval];
[message saveFriendRequestExpiresAt:[NSDate ows_millisecondsSince1970ForDate:expirationDate] withTransaction:transaction];

Loading…
Cancel
Save