fix deleteConversation; use cascadeDeleteInRealm, cascadeDeleteInRealm

This commit is contained in:
nixzhu
2015-12-03 11:20:10 +08:00
parent 137fa084c7
commit effb8a616d
3 changed files with 9 additions and 13 deletions
+4 -12
View File
@@ -218,13 +218,9 @@ class Group: Object {
//
func cascadeDelete() {
func cascadeDeleteInRealm(realm: Realm) {
guard let realm = realm else {
return
}
withFeed?.cascadeDelete()
withFeed?.cascadeDeleteInRealm(realm)
if let conversation = conversation {
realm.delete(conversation)
@@ -748,11 +744,7 @@ class Feed: Object {
//
func cascadeDelete() {
guard let realm = realm else {
return
}
func cascadeDeleteInRealm(realm: Realm) {
attachments.forEach {
realm.delete($0)
@@ -1492,7 +1484,7 @@ func deleteConversation(conversation: Conversation, inRealm realm: Realm, needLe
if let feed = conversation.withGroup?.withFeed {
feed.cascadeDelete()
feed.cascadeDeleteInRealm(realm)
}
let groupID = group.groupID
+1 -1
View File
@@ -538,7 +538,7 @@ func syncGroupsAndDoFurtherAction(furtherAction: () -> Void) {
}
} else {
group.cascadeDelete()
group.cascadeDeleteInRealm(realm)
}
}
@@ -2130,10 +2130,14 @@ class ConversationViewController: BaseViewController {
return
}
realm.beginWrite()
deleteConversation(conversation, inRealm: realm, afterLeaveGroup: {
afterLeaveGroup?()
})
let _ = try? realm.commitWrite()
NSNotificationCenter.defaultCenter().postNotificationName(YepConfig.Notification.changedConversation, object: nil)
self?.navigationController?.popViewControllerAnimated(true)