From 219edb52ac635ea147580ff49fc98b3d253ee070 Mon Sep 17 00:00:00 2001 From: nixzhu Date: Mon, 13 Apr 2015 20:11:47 +0800 Subject: [PATCH] insert newSectionDateMessage if need while send message --- Yep/Services/YepService.swift | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/Yep/Services/YepService.swift b/Yep/Services/YepService.swift index 5a93a3c3..8dfeab16 100644 --- a/Yep/Services/YepService.swift +++ b/Yep/Services/YepService.swift @@ -651,6 +651,21 @@ func sendMessageWithMediaType(mediaType: MessageMediaType, inFilePath filePath: if let conversation = conversation { conversation.updatedAt = message.createdAt // 关键哦 message.conversation = conversation + + let messages = messagesInConversation(conversation) + if messages.count > 1 { + if let prevMessage = messages.objectAtIndex(messages.count - 2) as? Message { + if message.createdAt.timeIntervalSinceDate(prevMessage.createdAt) > 30 { // TODO: Time Section + + // insert a new SectionDate Message + let newSectionDateMessage = Message() + newSectionDateMessage.conversation = conversation + newSectionDateMessage.mediaType = MessageMediaType.SectionDate.rawValue + newSectionDateMessage.createdAt = message.createdAt.dateByAddingTimeInterval(-1) // 比新消息早一秒 + realm.addObject(newSectionDateMessage) + } + } + } } realm.commitWriteTransaction()