From 980db7a980c0ac127fe04f162ab44aab3633b064 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 11 Dec 2015 14:50:26 -0500 Subject: [PATCH] (fix #127) fallback to "work" when export as ldif --- SoObjects/Contacts/NGVCard+SOGo.m | 54 +++++++++++++++++-------------- 1 file changed, 29 insertions(+), 25 deletions(-) diff --git a/SoObjects/Contacts/NGVCard+SOGo.m b/SoObjects/Contacts/NGVCard+SOGo.m index 6a0a6cf5d..3bab410b6 100644 --- a/SoObjects/Contacts/NGVCard+SOGo.m +++ b/SoObjects/Contacts/NGVCard+SOGo.m @@ -513,31 +513,6 @@ convention: flattenedValuesForKey: @""] inLDIFRecord: ldifRecord]; - elements = [self childrenWithTag: @"adr" - andAttribute: @"type" havingValue: @"work"]; - if (elements && [elements count] > 0) - { - element = [elements objectAtIndex: 0]; - [self _setValue: @"mozillaworkstreet2" - to: [element flattenedValueAtIndex: 1 forKey: @""] - inLDIFRecord: ldifRecord]; - [self _setValue: @"street" - to: [element flattenedValueAtIndex: 2 forKey: @""] - inLDIFRecord: ldifRecord]; - [self _setValue: @"l" - to: [element flattenedValueAtIndex: 3 forKey: @""] - inLDIFRecord: ldifRecord]; - [self _setValue: @"st" - to: [element flattenedValueAtIndex: 4 forKey: @""] - inLDIFRecord: ldifRecord]; - [self _setValue: @"postalcode" - to: [element flattenedValueAtIndex: 5 forKey: @""] - inLDIFRecord: ldifRecord]; - [self _setValue: @"c" - to: [element flattenedValueAtIndex: 6 forKey: @""] - inLDIFRecord: ldifRecord]; - } - elements = [self childrenWithTag: @"adr" andAttribute: @"type" havingValue: @"home"]; if (elements && [elements count] > 0) @@ -563,6 +538,35 @@ convention: inLDIFRecord: ldifRecord]; } + elements = [self childrenWithTag: @"adr" + andAttribute: @"type" havingValue: @"work"]; + + if (!elements || [elements count] == 0) + elements = [self childrenWithTag: @"adr"]; + + if (elements && [elements count] > 0) + { + element = [elements objectAtIndex: 0]; + [self _setValue: @"mozillaworkstreet2" + to: [element flattenedValueAtIndex: 1 forKey: @""] + inLDIFRecord: ldifRecord]; + [self _setValue: @"street" + to: [element flattenedValueAtIndex: 2 forKey: @""] + inLDIFRecord: ldifRecord]; + [self _setValue: @"l" + to: [element flattenedValueAtIndex: 3 forKey: @""] + inLDIFRecord: ldifRecord]; + [self _setValue: @"st" + to: [element flattenedValueAtIndex: 4 forKey: @""] + inLDIFRecord: ldifRecord]; + [self _setValue: @"postalcode" + to: [element flattenedValueAtIndex: 5 forKey: @""] + inLDIFRecord: ldifRecord]; + [self _setValue: @"c" + to: [element flattenedValueAtIndex: 6 forKey: @""] + inLDIFRecord: ldifRecord]; + } + elements = [self childrenWithTag: @"url"]; [self _setValue: @"mozillaworkurl" to: [self _simpleValueForType: @"work" inArray: elements