Merge branch 'charlesmchen/mergeOrganizationName'

pull/1/head
Matthew Chen 7 years ago
commit 5a80001878

@ -346,15 +346,27 @@ NS_ASSUME_NONNULL_BEGIN
mergedCNContact.nameSuffix = newCNContact.nameSuffix.ows_stripped;
}
if (mergedCNContact.organizationName.ows_stripped.length < 1) {
mergedCNContact.organizationName = newCNContact.organizationName.ows_stripped;
}
// Phone Numbers
NSSet<PhoneNumber *> *existingPhoneNumberSet = [NSSet setWithArray:self.parsedPhoneNumbers];
NSSet<PhoneNumber *> *existingParsedPhoneNumberSet = [NSSet setWithArray:self.parsedPhoneNumbers];
NSSet<NSString *> *existingUnparsedPhoneNumberSet = [NSSet setWithArray:self.userTextPhoneNumbers];
NSMutableArray<CNLabeledValue<CNPhoneNumber *> *> *mergedPhoneNumbers = [mergedCNContact.phoneNumbers mutableCopy];
for (CNLabeledValue<CNPhoneNumber *> *labeledPhoneNumber in newCNContact.phoneNumbers) {
NSString *_Nullable unparsedPhoneNumber = labeledPhoneNumber.value.stringValue;
if ([existingUnparsedPhoneNumberSet containsObject:unparsedPhoneNumber]) {
// Skip phone number if "unparsed" form is a duplicate.
continue;
}
PhoneNumber *_Nullable parsedPhoneNumber = [PhoneNumber tryParsePhoneNumberFromUserSpecifiedText:labeledPhoneNumber.value.stringValue];
if (parsedPhoneNumber && ![existingPhoneNumberSet containsObject:parsedPhoneNumber]) {
[mergedPhoneNumbers addObject:labeledPhoneNumber];
if (parsedPhoneNumber && [existingParsedPhoneNumberSet containsObject:parsedPhoneNumber]) {
// Skip phone number if "parsed" form is a duplicate.
continue;
}
[mergedPhoneNumbers addObject:labeledPhoneNumber];
}
mergedCNContact.phoneNumbers = mergedPhoneNumbers;

Loading…
Cancel
Save