mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-07-05 16:35:10 +00:00
bugfix for new user without userSettings.mail
This commit is contained in:
@@ -156,12 +156,13 @@
|
||||
|
||||
co = [self clientObject];
|
||||
us = [[context activeUser] userSettings];
|
||||
moduleSettings = [us objectForKey: @"Mail"];
|
||||
if (!(moduleSettings = [us objectForKey: @"Mail"]))
|
||||
[us setObject:[NSMutableDictionary dictionnary] forKey: @"Mail"];
|
||||
msguid = [co nameInContainer];
|
||||
currentMailbox = [[co container] nameInContainer];
|
||||
currentAccount = [[[co container] container] nameInContainer];
|
||||
keyForMsgUIDs = [NSString stringWithFormat:@"/%@/%@", currentAccount, currentMailbox];
|
||||
|
||||
|
||||
if (isCollapsing)
|
||||
{
|
||||
// Check if the module threadsCollapsed is created in the userSettings
|
||||
@@ -196,14 +197,12 @@
|
||||
if ((mailboxThreadsCollapsed = [threadsCollapsed objectForKey:keyForMsgUIDs]))
|
||||
{
|
||||
[mailboxThreadsCollapsed removeObject:msguid];
|
||||
|
||||
if ([mailboxThreadsCollapsed count] == 0)
|
||||
[threadsCollapsed removeObjectForKey:keyForMsgUIDs];
|
||||
}
|
||||
}
|
||||
// TODO : Manage errors
|
||||
// TODO : Manage errors
|
||||
}
|
||||
|
||||
[us synchronize];
|
||||
}
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ var messageCheckTimer;
|
||||
|
||||
// Variables for feature threadsCollapsing
|
||||
var displayThreadElement = false;
|
||||
var cachedThreadsCollapsed = UserSettings.Mail.threadsCollapsed;
|
||||
var cachedThreadsCollapsed = (UserSettings.Mail ? UserSettings.Mail.threadsCollapsed: []);
|
||||
|
||||
/* We need to override this method since it is adapted to GCS-based folder
|
||||
references, which we do not use here */
|
||||
@@ -2608,8 +2608,10 @@ function onMenuToggleMessageFlag(event) {
|
||||
|
||||
function refreshUserSettingsCallback(http) {
|
||||
var allUserSettings = http.response.evalJSON();
|
||||
UserSettings.Mail = allUserSettings.Mail;
|
||||
cachedThreadsCollapsed = UserSettings.Mail.threadsCollapsed;
|
||||
if (UserSettings.Mail) {
|
||||
UserSettings.Mail = allUserSettings.Mail;
|
||||
cachedThreadsCollapsed = UserSettings.Mail.threadsCollapsed;
|
||||
}
|
||||
refreshMailbox();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user