TF-1321 Get default identity for Team-Mailbox

This commit is contained in:
dab246
2023-02-07 09:24:31 +07:00
committed by Dat Vu
parent 1bee62b474
commit fdb354d780
3 changed files with 25 additions and 9 deletions
@@ -258,17 +258,33 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
void _getAllIdentitiesSuccess(GetAllIdentitiesSuccess success) {
if (success.identities?.isNotEmpty == true) {
try {
final identityDefault = success.identities!
.firstWhere((identity) => identity.mayDelete == false);
_identitySelected = identityDefault;
} catch (e) {
logError('SingleEmailController::_getAllIdentitiesSuccess(): ${e.toString()}');
_identitySelected = success.identities!.first;
if (currentEmail != null) {
final currentMailbox = getMailboxContain(currentEmail!);
log('SingleEmailController::_getAllIdentitiesSuccess():currentMailbox: $currentMailbox');
if (currentMailbox != null && currentMailbox.isPersonal == false) {
_setUpDefaultIdentityForTeamMailbox(success.identities!, currentMailbox);
} else {
_setUpDefaultIdentity(success.identities!);
}
} else {
_setUpDefaultIdentity(success.identities!);
}
}
}
void _setUpDefaultIdentityForTeamMailbox(List<Identity> identities, PresentationMailbox currentMailbox) {
final matchedTeamMailboxIdentity = identities.firstWhereOrNull((identity) => identity.email == currentMailbox.emailTeamMailBoxes);
if (matchedTeamMailboxIdentity != null) {
_identitySelected = matchedTeamMailboxIdentity;
} else {
_identitySelected = identities.first;
}
}
void _setUpDefaultIdentity(List<Identity> identities) {
_identitySelected = identities.first;
}
void _getEmailContentAction(EmailId emailId) async {
final accountId = mailboxDashBoardController.accountId.value;
final baseDownloadUrl = mailboxDashBoardController.sessionCurrent?.getDownloadUrl();
@@ -369,7 +369,7 @@ class MailBoxFolderTileBuilder {
),
if(_mailboxNode.item.isTeamMailboxes)
Text(
_mailboxNode.item.nameTeamMailBoxes ?? '',
_mailboxNode.item.emailTeamMailBoxes ?? '',
maxLines: 1,
softWrap: CommonTextStyle.defaultSoftWrap,
overflow: CommonTextStyle.defaultTextOverFlow,
+1 -1
View File
@@ -97,7 +97,7 @@ class PresentationMailbox with EquatableMixin {
}
}
String? get nameTeamMailBoxes => namespace?.value.substring(
String? get emailTeamMailBoxes => namespace?.value.substring(
(namespace?.value.indexOf('[') ?? 0) + 1,
namespace?.value.indexOf(']'));