wip: update disappearing messages config off info message's expiration

pull/941/head
Ryan Zhao 2 years ago
parent 16cac78880
commit e93c83b9f2

@ -457,13 +457,16 @@ class ThreadDisappearingMessagesViewModel: SessionTableViewModel<ThreadDisappear
}
_ = try updatedConfig.saved(db)
let nowInMs: Double = floor(Date().timeIntervalSince1970 * 1000)
let interaction: Interaction = try Interaction(
threadId: threadId,
authorId: getUserHexEncodedPublicKey(db),
variant: .infoDisappearingMessagesUpdate,
body: updatedConfig.messageInfoString(with: nil, isPreviousOff: !self.config.isEnabled),
timestampMs: Int64(floor(Date().timeIntervalSince1970 * 1000))
timestampMs: Int64(nowInMs),
expiresInSeconds: updatedConfig.isEnabled ? nil : self.config.durationSeconds,
expiresStartedAtMs: (!updatedConfig.isEnabled && self.config.type == .disappearAfterSend) ? nowInMs : nil
)
.inserted(db)

@ -335,6 +335,7 @@ public struct Interaction: Codable, Identifiable, Equatable, FetchableRecord, Mu
// Automatically add disapeparing messages configuration
if self.variant.shouldFollowDisappearingMessagesConfiguration,
self.expiresInSeconds == nil, self.expiresStartedAtMs == nil,
let disappearingMessagesConfiguration = try? DisappearingMessagesConfiguration.fetchOne(db, id: self.threadId),
disappearingMessagesConfiguration.isEnabled
{

Loading…
Cancel
Save