TF-1493 Synchronize 2 types of signature when sending email
This commit is contained in:
@@ -56,6 +56,7 @@ import 'package:tmail_ui_user/features/mailbox_dashboard/domain/usecases/save_co
|
|||||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart';
|
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart';
|
||||||
import 'package:tmail_ui_user/features/manage_account/domain/state/get_all_identities_state.dart';
|
import 'package:tmail_ui_user/features/manage_account/domain/state/get_all_identities_state.dart';
|
||||||
import 'package:tmail_ui_user/features/manage_account/domain/usecases/get_all_identities_interactor.dart';
|
import 'package:tmail_ui_user/features/manage_account/domain/usecases/get_all_identities_interactor.dart';
|
||||||
|
import 'package:tmail_ui_user/features/manage_account/presentation/extensions/identity_extension.dart';
|
||||||
import 'package:tmail_ui_user/features/upload/domain/model/upload_task_id.dart';
|
import 'package:tmail_ui_user/features/upload/domain/model/upload_task_id.dart';
|
||||||
import 'package:tmail_ui_user/features/upload/domain/state/attachment_upload_state.dart';
|
import 'package:tmail_ui_user/features/upload/domain/state/attachment_upload_state.dart';
|
||||||
import 'package:tmail_ui_user/features/upload/domain/state/local_file_picker_state.dart';
|
import 'package:tmail_ui_user/features/upload/domain/state/local_file_picker_state.dart';
|
||||||
@@ -162,9 +163,9 @@ class ComposerController extends BaseController {
|
|||||||
final newContentHtml = contentHtml.removeEditorStartTag();
|
final newContentHtml = contentHtml.removeEditorStartTag();
|
||||||
if (changedEmail) {
|
if (changedEmail) {
|
||||||
return newContentHtml;
|
return newContentHtml;
|
||||||
} else if (_isMobileApp && identitySelected.value?.textSignature?.value.isNotEmpty == true) {
|
} else if (_isMobileApp && identitySelected.value?.signatureAsString.isNotEmpty == true) {
|
||||||
final contentHtmlWithSignature =
|
final contentHtmlWithSignature =
|
||||||
'$newContentHtml${identitySelected.value?.textSignature?.value.toSignatureBlock()}';
|
'$newContentHtml${identitySelected.value?.signatureAsString.toSignatureBlock()}';
|
||||||
log('ComposerController::_getEmailBodyText():MOBILE:SIGNATURE: $contentHtmlWithSignature');
|
log('ComposerController::_getEmailBodyText():MOBILE:SIGNATURE: $contentHtmlWithSignature');
|
||||||
return contentHtmlWithSignature;
|
return contentHtmlWithSignature;
|
||||||
} else {
|
} else {
|
||||||
@@ -922,10 +923,8 @@ class ComposerController extends BaseController {
|
|||||||
oldEmailBody = BuildUtils.isWeb ? oldEmailBody : '\n$oldEmailBody\n';
|
oldEmailBody = BuildUtils.isWeb ? oldEmailBody : '\n$oldEmailBody\n';
|
||||||
}
|
}
|
||||||
if (BuildUtils.isWeb) {
|
if (BuildUtils.isWeb) {
|
||||||
if (identitySelected.value?.htmlSignature?.value.isNotEmpty == true) {
|
if (identitySelected.value?.signatureAsString.isNotEmpty == true) {
|
||||||
oldEmailBody = '$oldEmailBody${identitySelected.value?.htmlSignature?.value.toSignatureBlock()}';
|
oldEmailBody = '$oldEmailBody${identitySelected.value?.signatureAsString.toSignatureBlock()}';
|
||||||
} else if (identitySelected.value?.textSignature?.value.isNotEmpty == true) {
|
|
||||||
oldEmailBody = '$oldEmailBody${identitySelected.value?.textSignature?.value.toSignatureBlock()}';
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1330,8 +1329,8 @@ class ComposerController extends BaseController {
|
|||||||
|
|
||||||
bool get _isMobileApp {
|
bool get _isMobileApp {
|
||||||
return !BuildUtils.isWeb
|
return !BuildUtils.isWeb
|
||||||
&& currentContext != null
|
&& currentContext != null
|
||||||
&& _responsiveUtils.isMobile(currentContext!);
|
&& (_responsiveUtils.isLandscapeMobile(currentContext!) || _responsiveUtils.isPortraitMobile(currentContext!));
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> _applyIdentityForAllFieldComposer(
|
Future<void> _applyIdentityForAllFieldComposer(
|
||||||
@@ -1354,12 +1353,8 @@ class ComposerController extends BaseController {
|
|||||||
await _applyBccEmailAddressFromIdentity(newIdentity.bcc!);
|
await _applyBccEmailAddressFromIdentity(newIdentity.bcc!);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!_isMobileApp) {
|
if (!_isMobileApp && newIdentity.signatureAsString.isNotEmpty == true) {
|
||||||
if (newIdentity.htmlSignature?.value.isNotEmpty == true) {
|
_applySignature(newIdentity.signatureAsString);
|
||||||
_applySignature(newIdentity.htmlSignature!);
|
|
||||||
} else if (newIdentity.textSignature?.value.isNotEmpty == true) {
|
|
||||||
_applySignature(newIdentity.textSignature!);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return Future.value(null);
|
return Future.value(null);
|
||||||
@@ -1391,8 +1386,8 @@ class ComposerController extends BaseController {
|
|||||||
_updateStatusEmailSendButton();
|
_updateStatusEmailSendButton();
|
||||||
}
|
}
|
||||||
|
|
||||||
void _applySignature(Signature signature) {
|
void _applySignature(String signature) {
|
||||||
final signatureAsHtml = '--<br><br>${signature.value}';
|
final signatureAsHtml = '--<br><br>$signature';
|
||||||
log('ComposerController::_applySignature(): $signatureAsHtml');
|
log('ComposerController::_applySignature(): $signatureAsHtml');
|
||||||
if (BuildUtils.isWeb) {
|
if (BuildUtils.isWeb) {
|
||||||
richTextWebController.editorController.insertSignature(signatureAsHtml);
|
richTextWebController.editorController.insertSignature(signatureAsHtml);
|
||||||
|
|||||||
Reference in New Issue
Block a user