TF-2305 Session::getOwnEmailAddress method to fetch the user email address from urn:ietf:params:jmap:principals imip mailto property if not present in the session username, which is the case for Cyrus
This commit is contained in:
committed by
Dat H. Pham
parent
327af38fb0
commit
6720709a2e
@@ -832,15 +832,15 @@ class ComposerController extends BaseController
|
||||
required EmailActionType actionType,
|
||||
String? listPost,
|
||||
}) {
|
||||
final userName = mailboxDashBoardController.sessionCurrent?.username.value;
|
||||
final senderEmailAddress = mailboxDashBoardController.sessionCurrent?.getOwnEmailAddress();
|
||||
final isSender = presentationEmail.from
|
||||
.asList()
|
||||
.any((element) => element.emailAddress.isNotEmpty && element.emailAddress == userName);
|
||||
.any((element) => element.emailAddress.isNotEmpty && element.emailAddress == senderEmailAddress);
|
||||
|
||||
final recipients = presentationEmail.generateRecipientsEmailAddressForComposer(
|
||||
emailActionType: actionType,
|
||||
isSender: isSender,
|
||||
userName: userName,
|
||||
userName: senderEmailAddress,
|
||||
listPost: listPost,
|
||||
);
|
||||
|
||||
@@ -1506,7 +1506,7 @@ class ComposerController extends BaseController
|
||||
if (arguments.emailActionType == EmailActionType.editDraft) {
|
||||
return arguments.presentationEmail?.firstEmailAddressInFrom ?? '';
|
||||
} else {
|
||||
return mailboxDashBoardController.sessionCurrent?.username.value ?? '';
|
||||
return mailboxDashBoardController.sessionCurrent?.getOwnEmailAddress() ?? '';
|
||||
}
|
||||
}
|
||||
return '';
|
||||
|
||||
@@ -9,7 +9,7 @@ import 'package:jmap_dart_client/jmap/mail/email/keyword_identifier.dart';
|
||||
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
|
||||
import 'package:model/email/email_action_type.dart';
|
||||
import 'package:model/extensions/email_address_extension.dart';
|
||||
import 'package:model/extensions/username_extension.dart';
|
||||
import 'package:model/extensions/session_extension.dart';
|
||||
import 'package:model/mailbox/presentation_mailbox.dart';
|
||||
import 'package:tmail_ui_user/features/composer/domain/model/email_request.dart';
|
||||
import 'package:tmail_ui_user/features/composer/presentation/extensions/identity_extension.dart';
|
||||
@@ -26,7 +26,7 @@ extension CreateEmailRequestExtension on CreateEmailRequest {
|
||||
if (identity?.email?.isNotEmpty == true) {
|
||||
return { identity!.toEmailAddress() };
|
||||
} else {
|
||||
return { session.username.toEmailAddress() };
|
||||
return { EmailAddress(null, session.getOwnEmailAddress()) };
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,7 +34,7 @@ extension CreateEmailRequestExtension on CreateEmailRequest {
|
||||
if (emailActionType == EmailActionType.editDraft && fromSender.isNotEmpty) {
|
||||
return fromSender.first.emailAddress;
|
||||
} else {
|
||||
return session.username.value;
|
||||
return session.getOwnEmailAddress();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -42,7 +42,7 @@ extension CreateEmailRequestExtension on CreateEmailRequest {
|
||||
if (identity?.replyTo?.isNotEmpty == true) {
|
||||
return identity!.replyTo!.toSet();
|
||||
} else {
|
||||
return { session.username.toEmailAddress() };
|
||||
return { EmailAddress(null, session.getOwnEmailAddress()) };
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user