From 7a75f2bb8bb6e207457ad4341a9f7c5e40be1c7a Mon Sep 17 00:00:00 2001 From: Yann Diorcet Date: Thu, 20 Dec 2012 14:12:23 +0100 Subject: [PATCH] Show organization name if there is no first name and last name --- Classes/ContactsTableViewController.m | 10 +- Classes/LinphoneUI/UIContactCell.m | 12 +- Classes/LinphoneUI/UIContactDetailsHeader.m | 5 +- .../en.lproj/UIContactDetailsHeader.xib | 77 +++++++++- .../fr.lproj/UIContactDetailsHeader.xib | 141 +++++++++--------- linphone.ldb/Contents.plist | 12 +- .../{4 => 5}/UIContactDetailsHeader.xib | 77 +++++++++- 7 files changed, 243 insertions(+), 91 deletions(-) rename linphone.ldb/Resources/LinphoneUI/UIContactDetailsHeader/{4 => 5}/UIContactDetailsHeader.xib (84%) diff --git a/Classes/ContactsTableViewController.m b/Classes/ContactsTableViewController.m index 2fcd57e3f..c46f31fd4 100644 --- a/Classes/ContactsTableViewController.m +++ b/Classes/ContactsTableViewController.m @@ -102,6 +102,8 @@ static void sync_address_book (ABAddressBookRef addressBook, CFDictionaryRef inf CFStringRef lLocalizedFirstName = (lFirstName != nil)? ABAddressBookCopyLocalizedLabel(lFirstName): nil; CFStringRef lLastName = ABRecordCopyValue((ABRecordRef)lPerson, kABPersonLastNameProperty); CFStringRef lLocalizedLastName = (lLastName != nil)? ABAddressBookCopyLocalizedLabel(lLastName): nil; + CFStringRef lOrganization = ABRecordCopyValue((ABRecordRef)lPerson, kABPersonOrganizationProperty); + CFStringRef lLocalizedlOrganization = (lOrganization != nil)? ABAddressBookCopyLocalizedLabel(lOrganization): nil; NSString *name = nil; if(lLocalizedFirstName != nil && lLocalizedLastName != nil) { name=[NSString stringWithFormat:@"%@%@", [(NSString *)lLocalizedFirstName retain], [(NSString *)lLocalizedLastName retain]]; @@ -109,8 +111,8 @@ static void sync_address_book (ABAddressBookRef addressBook, CFDictionaryRef inf name=[NSString stringWithFormat:@"%@",[(NSString *)lLocalizedLastName retain]]; } else if(lLocalizedFirstName != nil) { name=[NSString stringWithFormat:@"%@",[(NSString *)lLocalizedFirstName retain]]; - } else { - + } else if(lLocalizedlOrganization != nil) { + name=[NSString stringWithFormat:@"%@",[(NSString *)lLocalizedlOrganization retain]]; } if(name != nil && [name length] > 0) { // Put in correct subDic @@ -125,6 +127,10 @@ static void sync_address_book (ABAddressBookRef addressBook, CFDictionaryRef inf } [subDic insertObject:lPerson forKey:name selector:@selector(caseInsensitiveCompare:)]; } + if(lLocalizedlOrganization != nil) + CFRelease(lLocalizedlOrganization); + if(lOrganization != nil) + CFRelease(lOrganization); if(lLocalizedLastName != nil) CFRelease(lLocalizedLastName); if(lLastName != nil) diff --git a/Classes/LinphoneUI/UIContactCell.m b/Classes/LinphoneUI/UIContactCell.m index bee9f1448..59a8c7ebb 100644 --- a/Classes/LinphoneUI/UIContactCell.m +++ b/Classes/LinphoneUI/UIContactCell.m @@ -80,7 +80,9 @@ CFStringRef lLocalizedFirstName = (lFirstName != nil)?ABAddressBookCopyLocalizedLabel(lFirstName):nil; CFStringRef lLastName = ABRecordCopyValue(contact, kABPersonLastNameProperty); CFStringRef lLocalizedLastName = (lLastName != nil)?ABAddressBookCopyLocalizedLabel(lLastName):nil; - + CFStringRef lOrganization = ABRecordCopyValue(contact, kABPersonOrganizationProperty); + CFStringRef lLocalizedOrganization = (lOrganization != nil)?ABAddressBookCopyLocalizedLabel(lOrganization):nil; + if(lLocalizedFirstName != nil) [firstNameLabel setText: (NSString *)lLocalizedFirstName]; else @@ -91,6 +93,14 @@ else [lastNameLabel setText: @""]; + if(lLocalizedFirstName == nil && lLocalizedLastName == nil) { + [firstNameLabel setText: (NSString *)lLocalizedOrganization]; + } + + if(lLocalizedOrganization != nil) + CFRelease(lLocalizedOrganization); + if(lOrganization != nil) + CFRelease(lOrganization); if(lLocalizedLastName != nil) CFRelease(lLocalizedLastName); if(lLastName != nil) diff --git a/Classes/LinphoneUI/UIContactDetailsHeader.m b/Classes/LinphoneUI/UIContactDetailsHeader.m index 3359d35b3..f9db45aa5 100644 --- a/Classes/LinphoneUI/UIContactDetailsHeader.m +++ b/Classes/LinphoneUI/UIContactDetailsHeader.m @@ -42,7 +42,8 @@ - (void)initUIContactDetailsHeader { propertyList = [[NSArray alloc] initWithObjects: [NSNumber numberWithInt:kABPersonFirstNameProperty], - [NSNumber numberWithInt:kABPersonLastNameProperty], nil]; + [NSNumber numberWithInt:kABPersonLastNameProperty], + [NSNumber numberWithInt:kABPersonOrganizationProperty], nil]; editing = FALSE; } @@ -139,7 +140,7 @@ + (CGFloat)height:(BOOL)editing { if(editing) { - return 130.0f; + return 160.0f; } else { return 80.0f; } diff --git a/Classes/LinphoneUI/en.lproj/UIContactDetailsHeader.xib b/Classes/LinphoneUI/en.lproj/UIContactDetailsHeader.xib index 3448c3439..729262f8a 100644 --- a/Classes/LinphoneUI/en.lproj/UIContactDetailsHeader.xib +++ b/Classes/LinphoneUI/en.lproj/UIContactDetailsHeader.xib @@ -2,9 +2,9 @@ 1536 - 11E53 + 11G63 2840 - 1138.47 + 1138.51 569.00 com.apple.InterfaceBuilder.IBCocoaTouchPlugin @@ -43,6 +43,7 @@ 292 {{-13, -5}, {131, 107}} + _NS:9 NO @@ -57,6 +58,7 @@ 292 {{20, 6}, {65, 65}} + _NS:9 NO @@ -71,6 +73,7 @@ 292 {{20, 6}, {65, 65}} + _NS:9 NO @@ -112,6 +115,7 @@ 290 {{0, 37}, {199, 43}} + _NS:9 NO @@ -143,6 +147,7 @@ {{101, 0}, {219, 80}} + _NS:9 @@ -158,8 +163,10 @@ 274 - {219, 130} + {219, 160} + + _NS:9 1 @@ -178,16 +185,18 @@ 10 - {{101, 0}, {219, 130}} + {{101, 0}, {219, 160}} + _NS:9 IBCocoaTouchFramework - {320, 130} + {320, 160} + _NS:9 @@ -370,7 +379,63 @@ 23 - + + + + UIContactDetailsHeader + UIViewController + + onAvatarClick: + id + + + onAvatarClick: + + onAvatarClick: + id + + + + UILabel + UIImageView + id + UIView + UIView + UITableView + + + + addressLabel + UILabel + + + avatarImage + UIImageView + + + contactDetailsDelegate + id + + + editView + UIView + + + normalView + UIView + + + tableView + UITableView + + + + IBProjectSource + ./Classes/UIContactDetailsHeader.h + + + + 0 IBCocoaTouchFramework YES diff --git a/Classes/LinphoneUI/fr.lproj/UIContactDetailsHeader.xib b/Classes/LinphoneUI/fr.lproj/UIContactDetailsHeader.xib index b1b2452be..f08ae22f4 100644 --- a/Classes/LinphoneUI/fr.lproj/UIContactDetailsHeader.xib +++ b/Classes/LinphoneUI/fr.lproj/UIContactDetailsHeader.xib @@ -1,22 +1,22 @@ - 1280 - 11E53 - 1938 - 1138.47 + 1536 + 11G63 + 2840 + 1138.51 569.00 com.apple.InterfaceBuilder.IBCocoaTouchPlugin - 933 + 1926 - IBUIButton - IBUITableView - IBUIImageView - IBUIView - IBUILabel IBProxyObject + IBUIButton + IBUIImageView + IBUILabel + IBUITableView + IBUIView com.apple.InterfaceBuilder.IBCocoaTouchPlugin @@ -158,63 +158,12 @@ 274 - {219, 130} + {219, 160} _NS:9 - 10 - - 549453824 - {512, 1} - - - - - - TU0AKgAACAjFzNT/xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/ -y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/ -xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/ -xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/ -xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/ -xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/ -xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/ -y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/ -y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/ -xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/ -xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/ -xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/ -xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/ -xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/ -y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/ -y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/ -xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/ -xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/ -xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/ -xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/ -xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/ -y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/ -y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/ -xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/ -xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/ -xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/ -xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/ -xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/ -y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/ -y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/ -xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/ -xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/ -xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/xczS/8vS2P/L0tj/xczU/8XM1P/FzNT/ -xczU/8XM0v/L0tj/y9LY/8XM1P/FzNT/xczU/8XM1P/FzNL/y9LY/8vS2P/FzNT/xczU/8XM1P/FzNT/ -xczS/8vS2P/L0tj/xczU/wANAQAAAwAAAAECAAAAAQEAAwAAAAEAAQAAAQIAAwAAAAQAAAiqAQMAAwAA -AAEAAQAAAQYAAwAAAAEAAgAAAREABAAAAAEAAAAIARIAAwAAAAEAAQAAARUAAwAAAAEABAAAARYAAwAA -AAEAAQAAARcABAAAAAEAAAgAARwAAwAAAAEAAQAAAVIAAwAAAAEAAQAAAVMAAwAAAAQAAAiyAAAAAAAI -AAgACAAIAAEAAQABAAE - - - - - - + 1 + MCAwIDAgMAA groupTableViewBackgroundColor YES @@ -229,7 +178,7 @@ AAgACAAIAAEAAQABAAE 10 - {{101, 0}, {219, 130}} + {{101, 0}, {219, 160}} _NS:9 @@ -237,7 +186,7 @@ AAgACAAIAAEAAQABAAE IBCocoaTouchFramework - {320, 130} + {320, 160} _NS:9 @@ -420,7 +369,63 @@ AAgACAAIAAEAAQABAAE 23 - + + + + UIContactDetailsHeader + UIViewController + + onAvatarClick: + id + + + onAvatarClick: + + onAvatarClick: + id + + + + UILabel + UIImageView + id + UIView + UIView + UITableView + + + + addressLabel + UILabel + + + avatarImage + UIImageView + + + contactDetailsDelegate + id + + + editView + UIView + + + normalView + UIView + + + tableView + UITableView + + + + IBProjectSource + ./Classes/UIContactDetailsHeader.h + + + + 0 IBCocoaTouchFramework YES @@ -429,6 +434,6 @@ AAgACAAIAAEAAQABAAE {262, 214} {131, 131} - 933 + 1926 diff --git a/linphone.ldb/Contents.plist b/linphone.ldb/Contents.plist index 7f3103e25..6f5bdfb7a 100644 --- a/linphone.ldb/Contents.plist +++ b/linphone.ldb/Contents.plist @@ -11072,17 +11072,17 @@ backup - 4 + 5 class BLWrapperHandle name - LinphoneUI/UIContactDetailsHeader/4/UIContactDetailsHeader.xib + LinphoneUI/UIContactDetailsHeader/5/UIContactDetailsHeader.xib change date - 2012-09-25T09:16:21Z + 2012-12-20T13:07:09Z changed values class @@ -11092,7 +11092,7 @@ flags 0 hash - a3054fa100ec1a034084f20d8b1369d9 + b230aead5bd66e84a58b749ed6a37680 name UIContactDetailsHeader.xib @@ -11179,9 +11179,9 @@ versions en - 4 + 5 fr - 4 + 5 diff --git a/linphone.ldb/Resources/LinphoneUI/UIContactDetailsHeader/4/UIContactDetailsHeader.xib b/linphone.ldb/Resources/LinphoneUI/UIContactDetailsHeader/5/UIContactDetailsHeader.xib similarity index 84% rename from linphone.ldb/Resources/LinphoneUI/UIContactDetailsHeader/4/UIContactDetailsHeader.xib rename to linphone.ldb/Resources/LinphoneUI/UIContactDetailsHeader/5/UIContactDetailsHeader.xib index 3448c3439..729262f8a 100644 --- a/linphone.ldb/Resources/LinphoneUI/UIContactDetailsHeader/4/UIContactDetailsHeader.xib +++ b/linphone.ldb/Resources/LinphoneUI/UIContactDetailsHeader/5/UIContactDetailsHeader.xib @@ -2,9 +2,9 @@ 1536 - 11E53 + 11G63 2840 - 1138.47 + 1138.51 569.00 com.apple.InterfaceBuilder.IBCocoaTouchPlugin @@ -43,6 +43,7 @@ 292 {{-13, -5}, {131, 107}} + _NS:9 NO @@ -57,6 +58,7 @@ 292 {{20, 6}, {65, 65}} + _NS:9 NO @@ -71,6 +73,7 @@ 292 {{20, 6}, {65, 65}} + _NS:9 NO @@ -112,6 +115,7 @@ 290 {{0, 37}, {199, 43}} + _NS:9 NO @@ -143,6 +147,7 @@ {{101, 0}, {219, 80}} + _NS:9 @@ -158,8 +163,10 @@ 274 - {219, 130} + {219, 160} + + _NS:9 1 @@ -178,16 +185,18 @@ 10 - {{101, 0}, {219, 130}} + {{101, 0}, {219, 160}} + _NS:9 IBCocoaTouchFramework - {320, 130} + {320, 160} + _NS:9 @@ -370,7 +379,63 @@ 23 - + + + + UIContactDetailsHeader + UIViewController + + onAvatarClick: + id + + + onAvatarClick: + + onAvatarClick: + id + + + + UILabel + UIImageView + id + UIView + UIView + UITableView + + + + addressLabel + UILabel + + + avatarImage + UIImageView + + + contactDetailsDelegate + id + + + editView + UIView + + + normalView + UIView + + + tableView + UITableView + + + + IBProjectSource + ./Classes/UIContactDetailsHeader.h + + + + 0 IBCocoaTouchFramework YES