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