TF-1321 Get receiver email address for send read recipient
This commit is contained in:
@@ -261,8 +261,8 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
|||||||
if (currentEmail != null) {
|
if (currentEmail != null) {
|
||||||
final currentMailbox = getMailboxContain(currentEmail!);
|
final currentMailbox = getMailboxContain(currentEmail!);
|
||||||
log('SingleEmailController::_getAllIdentitiesSuccess():currentMailbox: $currentMailbox');
|
log('SingleEmailController::_getAllIdentitiesSuccess():currentMailbox: $currentMailbox');
|
||||||
if (currentMailbox != null && currentMailbox.isPersonal == false) {
|
if (_isBelongToTeamMailboxes(currentMailbox)) {
|
||||||
_setUpDefaultIdentityForTeamMailbox(success.identities!, currentMailbox);
|
_setUpDefaultIdentityForTeamMailbox(success.identities!, currentMailbox!);
|
||||||
} else {
|
} else {
|
||||||
_setUpDefaultIdentity(success.identities!);
|
_setUpDefaultIdentity(success.identities!);
|
||||||
}
|
}
|
||||||
@@ -272,6 +272,10 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool _isBelongToTeamMailboxes(PresentationMailbox? presentationMailbox) {
|
||||||
|
return presentationMailbox != null && presentationMailbox.isPersonal == false;
|
||||||
|
}
|
||||||
|
|
||||||
void _setUpDefaultIdentityForTeamMailbox(List<Identity> identities, PresentationMailbox currentMailbox) {
|
void _setUpDefaultIdentityForTeamMailbox(List<Identity> identities, PresentationMailbox currentMailbox) {
|
||||||
final matchedTeamMailboxIdentity = identities.firstWhereOrNull((identity) => identity.email == currentMailbox.emailTeamMailBoxes);
|
final matchedTeamMailboxIdentity = identities.firstWhereOrNull((identity) => identity.email == currentMailbox.emailTeamMailBoxes);
|
||||||
if (matchedTeamMailboxIdentity != null) {
|
if (matchedTeamMailboxIdentity != null) {
|
||||||
@@ -971,7 +975,9 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
final mdnToSender = _generateMDN(context, currentEmail!, userProfile);
|
final receiverEmailAddress = _getReceiverEmailAddress(currentEmail!) ?? userProfile.email;
|
||||||
|
log('SingleEmailController::_handleSendReceiptToSenderAction():receiverEmailAddress: $receiverEmailAddress');
|
||||||
|
final mdnToSender = _generateMDN(context, currentEmail!, receiverEmailAddress);
|
||||||
final sendReceiptRequest = SendReceiptToSenderRequest(
|
final sendReceiptRequest = SendReceiptToSenderRequest(
|
||||||
mdn: mdnToSender,
|
mdn: mdnToSender,
|
||||||
identityId: _identitySelected!.id!,
|
identityId: _identitySelected!.id!,
|
||||||
@@ -981,8 +987,17 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
|||||||
consumeState(_sendReceiptToSenderInteractor!.execute(accountId, sendReceiptRequest));
|
consumeState(_sendReceiptToSenderInteractor!.execute(accountId, sendReceiptRequest));
|
||||||
}
|
}
|
||||||
|
|
||||||
MDN _generateMDN(BuildContext context, PresentationEmail email, UserProfile userProfile) {
|
String? _getReceiverEmailAddress(PresentationEmail presentationEmail) {
|
||||||
final receiverEmailAddress = userProfile.email;
|
final currentMailbox = getMailboxContain(presentationEmail);
|
||||||
|
if (_isBelongToTeamMailboxes(currentMailbox)) {
|
||||||
|
return currentMailbox!.emailTeamMailBoxes;
|
||||||
|
} else {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
MDN _generateMDN(BuildContext context, PresentationEmail email, String emailAddress) {
|
||||||
|
final receiverEmailAddress = emailAddress;
|
||||||
final subjectEmail = email.subject ?? '';
|
final subjectEmail = email.subject ?? '';
|
||||||
final timeCurrent = DateTime.now();
|
final timeCurrent = DateTime.now();
|
||||||
final timeAsString = '${timeCurrent.formatDate(
|
final timeAsString = '${timeCurrent.formatDate(
|
||||||
|
|||||||
Reference in New Issue
Block a user