fix(preferences(js)): sanitize mail identities when saving

pull/289/head
Francis Lachapelle 2020-09-10 12:22:53 -04:00
parent 64a8ce4048
commit aa706796c2
2 changed files with 11 additions and 1 deletions

View File

@ -1504,7 +1504,7 @@ static NSArray *reminderValues = nil;
[v setObject: [[user userDefaults] mailCertificate] forKey: @"SOGoMailCertificate"];
//
// We sanitize our auxilary mail accounts
// We sanitize our auxiliary mail accounts
//
accounts = [v objectForKey: @"AuxiliaryMailAccounts"];
if (accounts && [accounts isKindOfClass: [NSArray class]])

View File

@ -687,6 +687,16 @@
});
});
// See Account.prototype.$omit
_.forEach(preferences.defaults.AuxiliaryMailAccounts, function (account) {
var identities = [];
_.forEach(account.identities, function (identity) {
if (!identity.isReadOnly)
identities.push(_.pick(identity, ['email', 'fullName', 'replyTo', 'signature', 'isDefault']));
});
account.identities = identities;
});
if (!preferences.defaults.SOGoMailComposeWindowEnabled)
delete preferences.defaults.SOGoMailComposeWindow;
delete preferences.defaults.SOGoMailComposeWindowEnabled;