feat(mail): new option to force default identity

Users can now force the default identity to always be used when replying
or forwarding a message.
This commit is contained in:
Francis Lachapelle
2021-01-14 15:13:27 -05:00
parent 2826c83fc5
commit fc4f5d2161
12 changed files with 77 additions and 30 deletions
@@ -480,7 +480,7 @@
* @return an object literal copy of the Account instance
*/
Account.prototype.$omit = function () {
var account = {}, identities = [];
var account = {}, identities = [], defaultIdentity = false;
angular.forEach(this, function(value, key) {
if (key != 'constructor' && key !='identities' && key[0] != '$') {
@@ -491,9 +491,14 @@
_.forEach(this.identities, function (identity) {
if (!identity.isReadOnly)
identities.push(_.pick(identity, ['email', 'fullName', 'replyTo', 'signature', 'isDefault']));
if (identity.isDefault)
defaultIdentity = identity;
});
account.identities = identities;
if (!defaultIdentity || !account.forceDefaultIdentity)
delete account.forceDefaultIdentity;
return account;
};
@@ -74,6 +74,10 @@
}
};
this.hasDefaultIdentity = function() {
return _.findIndex(this.account.identities, function(identity) { return !!identity.isDefault; }) >= 0;
};
this.setDefaultIdentity = function ($event, $index) {
_.forEach(this.account.identities, function(identity, i) {
if (i == $index)