mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-10-12 23:37:15 +00:00
1 parent
4caff58918
commit
59dbef5ee7
3 files changed
+33
-9
No files matched your search
@@ -236,19 +236,40 @@ convention:
|
||||
- (void) _setEmails: (NSDictionary *) ldifRecord
|
||||
{
|
||||
CardElement *homeMail;
|
||||
NSString* mail;
|
||||
NSArray *emails;
|
||||
NSEnumerator *mailList;
|
||||
id mail;
|
||||
|
||||
// Emails from the configured mail fields of the source have already been extracted in
|
||||
// [LDAPSource _fillEmailsOfEntry:intoLDIFRecord:]
|
||||
[self addElementWithTag: @"email"
|
||||
ofType: @"work"
|
||||
withValue: [ldifRecord objectForKey: @"c_emails"]];
|
||||
|
||||
// When importing an LDIF file, add the default mail attribute
|
||||
mail = [ldifRecord objectForKey: @"mail"];
|
||||
if ([mail length] && ![[self emails] containsObject: mail])
|
||||
[self addElementWithTag: @"email"
|
||||
ofType: @"work"
|
||||
withValue: [ldifRecord objectForKey: @"mail"]];
|
||||
if (mail)
|
||||
{
|
||||
emails = [self emails];
|
||||
if ([mail isKindOfClass: [NSArray class]])
|
||||
{
|
||||
mailList = [(NSArray *)mail objectEnumerator];
|
||||
while ((mail = [mailList nextObject]))
|
||||
{
|
||||
if ([mail length] && ![emails containsObject: mail])
|
||||
[self addElementWithTag: @"email"
|
||||
ofType: @"work"
|
||||
withValue: mail];
|
||||
}
|
||||
}
|
||||
else if ([mail length] && ![emails containsObject: mail])
|
||||
{
|
||||
[self addElementWithTag: @"email"
|
||||
ofType: @"work"
|
||||
withValue: mail];
|
||||
}
|
||||
}
|
||||
|
||||
homeMail = [self elementWithTag: @"email" ofType: @"home"];
|
||||
[homeMail setSingleValue: [ldifRecord objectForKey: @"mozillasecondemail"] forKey: @""];
|
||||
[[self uniqueChildWithTag: @"x-mozilla-html"]
|
||||
|
||||
@@ -25,6 +25,7 @@
|
||||
|
||||
#import <NGExtensions/NSObject+Logs.h>
|
||||
#import <NGObjWeb/WOContext+SoObjects.h>
|
||||
#import <NGCards/NSDictionary+NGCards.h>
|
||||
|
||||
#import "SOGoUser.h"
|
||||
#import "SOGoUserDefaults.h"
|
||||
@@ -74,14 +75,15 @@
|
||||
*/
|
||||
- (NSString *) jsonRepresentation
|
||||
{
|
||||
NSString *v;
|
||||
id v;
|
||||
NSMutableDictionary *attrs;
|
||||
|
||||
attrs = [NSMutableDictionary dictionary];
|
||||
|
||||
v = [self value: 0 ofAttribute: @"type"];
|
||||
if ([v length])
|
||||
[attrs setObject: v
|
||||
v = [[self attributes] objectForCaseInsensitiveKey: @"type"];
|
||||
if (v && [v isKindOfClass: [NSArray class]] && [v count])
|
||||
// We can have multiple types, but we only return the first one
|
||||
[attrs setObject: [v objectAtIndex: 0]
|
||||
forKey: @"type"];
|
||||
[attrs setObject: [self flattenedValuesForKey: @""]
|
||||
forKey: @"value"];
|
||||
|
||||
Reference in new issue
Block a user