added molecules parameter
This commit is contained in:
parent
a225cf81e3
commit
96c275d51c
@ -33,9 +33,10 @@ public class PageGetContactBehavior: PageVisibilityBehavior {
|
||||
// Ask for permission
|
||||
CNContactStore().requestAccess(for: .contacts) { [weak self] (access, error) in
|
||||
guard access,
|
||||
error == nil else { return }
|
||||
error == nil,
|
||||
let rootMolecules = self?.delegate?.moleculeDelegate?.getRootMolecules() else { return }
|
||||
// Iterate models and provide contact
|
||||
self?.getContacts()
|
||||
self?.getContacts(for: rootMolecules)
|
||||
|
||||
// Tell template to update
|
||||
MVMCoreDispatchUtility.performBlock(onMainThread: {
|
||||
@ -45,10 +46,9 @@ public class PageGetContactBehavior: PageVisibilityBehavior {
|
||||
}
|
||||
}
|
||||
|
||||
public func getContacts() {
|
||||
guard let rootMolecules = delegate?.moleculeDelegate?.getRootMolecules() else { return }
|
||||
public func getContacts(for molecules: [MoleculeModelProtocol]) {
|
||||
let consumers: [PageGetContactBehaviorConsumerProtocol] = molecules.allMoleculesOfType()
|
||||
let store = CNContactStore()
|
||||
let consumers: [PageGetContactBehaviorConsumerProtocol] = rootMolecules.allMoleculesOfType()
|
||||
for consumer in consumers {
|
||||
guard let parameters = consumer.getMatchParameters(),
|
||||
let contacts = try? store.unifiedContacts(matching: parameters.0, keysToFetch: parameters.1) else { return }
|
||||
|
||||
Loading…
Reference in New Issue
Block a user