mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-07-05 08:34:30 +00:00
Monotone-Parent: 0bad93574cbb34f80f8e581a8347fec75a28f612
Monotone-Revision: 31bbff0f57dce6334191e5cabb61c655e5022a37 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2010-08-09T14:17:22 Monotone-Branch: ca.inverse.sogo
This commit is contained in:
+55
-13
@@ -25,6 +25,7 @@
|
||||
|
||||
#import <NGObjWeb/WOResourceManager.h>
|
||||
|
||||
#import <SOGo/NSArray+Utilities.h>
|
||||
#import <SOGo/NSDictionary+Utilities.h>
|
||||
#import <SOGo/SOGoUser.h>
|
||||
#import <SOGo/SOGoUserDefaults.h>
|
||||
@@ -44,6 +45,8 @@
|
||||
item = nil;
|
||||
title = nil;
|
||||
toolbar = nil;
|
||||
udKeys = nil;
|
||||
usKeys = nil;
|
||||
additionalJSFiles = nil;
|
||||
additionalCSSFiles = nil;
|
||||
}
|
||||
@@ -56,6 +59,8 @@
|
||||
[item release];
|
||||
[title release];
|
||||
[toolbar release];
|
||||
[udKeys release];
|
||||
[usKeys release];
|
||||
[additionalJSFiles release];
|
||||
[additionalCSSFiles release];
|
||||
[super dealloc];
|
||||
@@ -453,30 +458,67 @@
|
||||
return [ud language];
|
||||
}
|
||||
|
||||
- (NSString *) userSettings
|
||||
/* UserDefaults, UserSettings */
|
||||
- (NSString *) _dictionaryWithKeys: (NSArray *) keys
|
||||
fromSource: (SOGoDefaultsSource *) source
|
||||
{
|
||||
SOGoUserSettings *us;
|
||||
NSString *jsonResult;
|
||||
NSString *key;
|
||||
int count, max;
|
||||
NSMutableDictionary *dict;
|
||||
|
||||
us = [[context activeUser] userSettings];
|
||||
jsonResult = [[us source] jsonRepresentation];
|
||||
if (!jsonResult)
|
||||
jsonResult = @"{}";
|
||||
max = [keys count];
|
||||
|
||||
return jsonResult;
|
||||
dict = [NSMutableDictionary dictionaryWithCapacity: max];
|
||||
for (count = 0; count < max; count++)
|
||||
{
|
||||
key = [keys objectAtIndex: count];
|
||||
[dict setObject: [source objectForKey: key]
|
||||
forKey: key];
|
||||
}
|
||||
|
||||
return [dict jsonRepresentation];
|
||||
}
|
||||
|
||||
- (void) setUserDefaultsKeys: (NSString *) newKeys
|
||||
{
|
||||
[udKeys release];
|
||||
udKeys = [[newKeys componentsSeparatedByString: @","] trimmedComponents];
|
||||
[udKeys retain];
|
||||
}
|
||||
|
||||
- (BOOL) hasUserDefaultsKeys
|
||||
{
|
||||
return ([udKeys count] > 0);
|
||||
}
|
||||
|
||||
- (NSString *) userDefaults
|
||||
{
|
||||
SOGoUserDefaults *ud;
|
||||
NSString *jsonResult;
|
||||
|
||||
ud = [[context activeUser] userDefaults];
|
||||
jsonResult = [[ud source] jsonRepresentation];
|
||||
if (!jsonResult)
|
||||
jsonResult = @"{}";
|
||||
|
||||
return jsonResult;
|
||||
return [self _dictionaryWithKeys: udKeys fromSource: ud];
|
||||
}
|
||||
|
||||
- (void) setUserSettingsKeys: (NSString *) newKeys
|
||||
{
|
||||
[usKeys release];
|
||||
usKeys = [[newKeys componentsSeparatedByString: @","] trimmedComponents];
|
||||
[usKeys retain];
|
||||
}
|
||||
|
||||
- (BOOL) hasUserSettingsKeys
|
||||
{
|
||||
return ([usKeys count] > 0);
|
||||
}
|
||||
|
||||
- (NSString *) userSettings
|
||||
{
|
||||
SOGoUserSettings *us;
|
||||
|
||||
us = [[context activeUser] userSettings];
|
||||
|
||||
return [self _dictionaryWithKeys: usKeys fromSource: us];
|
||||
}
|
||||
|
||||
/* browser/os identification */
|
||||
|
||||
Reference in New Issue
Block a user