Skip to content

Commit 011737a

Browse files
committed
Hidden system chats.
1 parent de6a233 commit 011737a

File tree

5 files changed

+17
-5
lines changed

5 files changed

+17
-5
lines changed

Adamant/CoreData/ChatModels.xcdatamodeld/ChatModels.xcdatamodel/contents

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2-
<model type="com.apple.IDECoreDataModeler.DataModel" documentVersion="1.0" lastSavedToolsVersion="14135" systemVersion="17E202" minimumToolsVersion="Automatic" sourceLanguage="Swift" userDefinedModelVersionIdentifier="">
2+
<model type="com.apple.IDECoreDataModeler.DataModel" documentVersion="1.0" lastSavedToolsVersion="14135" systemVersion="17F77" minimumToolsVersion="Automatic" sourceLanguage="Swift" userDefinedModelVersionIdentifier="">
33
<entity name="BaseTransaction" representedClassName="BaseTransaction" isAbstract="YES" syncable="YES">
44
<attribute name="amount" optional="YES" attributeType="Decimal" defaultValueString="0" syncable="YES"/>
55
<attribute name="blockId" attributeType="String" syncable="YES"/>
@@ -15,6 +15,7 @@
1515
</entity>
1616
<entity name="Chatroom" representedClassName="Chatroom" syncable="YES">
1717
<attribute name="hasUnreadMessages" optional="YES" attributeType="Boolean" usesScalarValueType="YES" syncable="YES"/>
18+
<attribute name="isHidden" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES" syncable="YES"/>
1819
<attribute name="isReadonly" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES" syncable="YES"/>
1920
<attribute name="title" optional="YES" attributeType="String" syncable="YES"/>
2021
<attribute name="updatedAt" attributeType="Date" usesScalarValueType="NO" syncable="YES"/>
@@ -48,7 +49,7 @@
4849
</entity>
4950
<elements>
5051
<element name="BaseTransaction" positionX="378" positionY="18" width="128" height="210"/>
51-
<element name="Chatroom" positionX="-74" positionY="26" width="128" height="150"/>
52+
<element name="Chatroom" positionX="-74" positionY="26" width="128" height="165"/>
5253
<element name="ChatTransaction" positionX="142" positionY="137" width="128" height="120"/>
5354
<element name="CoreDataAccount" positionX="-236" positionY="174" width="128" height="150"/>
5455
<element name="MessageTransaction" positionX="243" positionY="326" width="128" height="90"/>

Adamant/CoreData/Chatroom+CoreDataProperties.swift

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
// Chatroom+CoreDataProperties.swift
33
// Adamant
44
//
5-
// Created by Anokhov Pavel on 02.06.2018.
5+
// Created by Anokhov Pavel on 28.06.2018.
66
// Copyright © 2018 Adamant. All rights reserved.
77
//
88
//
@@ -18,9 +18,10 @@ extension Chatroom {
1818
}
1919

2020
@NSManaged public var hasUnreadMessages: Bool
21+
@NSManaged public var isReadonly: Bool
2122
@NSManaged public var title: String?
2223
@NSManaged public var updatedAt: NSDate?
23-
@NSManaged public var isReadonly: Bool
24+
@NSManaged public var isHidden: Bool
2425
@NSManaged public var lastTransaction: ChatTransaction?
2526
@NSManaged public var partner: CoreDataAccount?
2627
@NSManaged public var transactions: NSSet?

Adamant/ServiceProtocols/DataProviders/AccountsProvider.swift

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,13 @@ enum AdamantContacts {
9898
return true
9999
}
100100

101+
var isHidden: Bool {
102+
switch self {
103+
case .adamantBountyWallet: return true
104+
case .adamantIco: return false
105+
}
106+
}
107+
101108
var avatar: String {
102109
return "avatar_bots"
103110
}

Adamant/Services/DataProviders/AdamantAccountsProvider.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,14 @@ class AdamantAccountsProvider: AccountsProvider {
1717
let name: String
1818
let avatar: String?
1919
let isReadonly: Bool
20+
let isHidden: Bool
2021

2122
fileprivate init(contact: AdamantContacts) {
2223
self.address = contact.address
2324
self.name = contact.name
2425
self.avatar = contact.avatar
2526
self.isReadonly = contact.isReadonly
27+
self.isHidden = contact.isHidden
2628
}
2729
}
2830

@@ -289,6 +291,7 @@ extension AdamantAccountsProvider {
289291
coreAccount.avatar = acc.avatar
290292
coreAccount.isSystem = true
291293
chatroom.isReadonly = acc.isReadonly
294+
chatroom.isHidden = acc.isHidden
292295
chatroom.title = acc.name
293296
}
294297

Adamant/Services/DataProviders/AdamantChatsProvider.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -553,7 +553,7 @@ extension AdamantChatsProvider {
553553
let request: NSFetchRequest<Chatroom> = NSFetchRequest(entityName: Chatroom.entityName)
554554
request.sortDescriptors = [NSSortDescriptor(key: "updatedAt", ascending: false),
555555
NSSortDescriptor(key: "title", ascending: true)]
556-
request.predicate = NSPredicate(format: "partner!=nil")
556+
request.predicate = NSCompoundPredicate(andPredicateWithSubpredicates: [NSPredicate(format: "partner!=nil"), NSPredicate(format: "isHidden = false")])
557557
let controller = NSFetchedResultsController(fetchRequest: request, managedObjectContext: stack.container.viewContext, sectionNameKeyPath: nil, cacheName: nil)
558558

559559
return controller

0 commit comments

Comments
 (0)