From 19444bb66dd77ebd94fe9c08b1df1ce4fab1e5ea Mon Sep 17 00:00:00 2001 From: Rostislav Wolny Date: Mon, 20 May 2019 16:34:37 +0200 Subject: [PATCH] Prevent that 2 same email addresses will display in error message [MAILPOET-1987] --- lib/Util/Notices/UnauthorizedEmailNotice.php | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/lib/Util/Notices/UnauthorizedEmailNotice.php b/lib/Util/Notices/UnauthorizedEmailNotice.php index c89b5d3b49..41f4551a4f 100644 --- a/lib/Util/Notices/UnauthorizedEmailNotice.php +++ b/lib/Util/Notices/UnauthorizedEmailNotice.php @@ -41,7 +41,11 @@ class UnauthorizedEmailNotice { } private function getMessageText($validation_error) { - if (!empty($validation_error['invalid_sender_address']) && !empty($validation_error['invalid_confirmation_address'])) { + if ( + !empty($validation_error['invalid_sender_address']) + && !empty($validation_error['invalid_confirmation_address']) + && $validation_error['invalid_sender_address'] !== $validation_error['invalid_confirmation_address'] + ) { $text = $this->wp->x('Sending all of your emails has been paused because your email addresses %default-sender-address and %signup-confirmation-address have not been authorized yet.', 'Email addresses have to be authorized to be used to send emails. %default-sender-address and %signup-confirmation-address will be replaced by email addresses.' ); @@ -73,9 +77,13 @@ class UnauthorizedEmailNotice { } private function getAuthorizationLink($validation_error) { - if (!empty($validation_error['invalid_sender_address']) && !empty($validation_error['invalid_confirmation_address'])) { - $authorize_link = $this->wp->x('Authorize %email and %email2', 'Link for user to authorize their email address'); - $authorize_link = str_replace('%email', EscapeHelper::escapeHtmlText($validation_error['invalid_sender_address']), $authorize_link); + if ( + !empty($validation_error['invalid_sender_address']) + && !empty($validation_error['invalid_confirmation_address']) + && $validation_error['invalid_sender_address'] !== $validation_error['invalid_confirmation_address'] + ) { + $authorize_link = $this->wp->x('Authorize %email1 and %email2', 'Link for user to authorize their email address'); + $authorize_link = str_replace('%email1', EscapeHelper::escapeHtmlText($validation_error['invalid_sender_address']), $authorize_link); $authorize_link = str_replace('%email2', EscapeHelper::escapeHtmlText($validation_error['invalid_confirmation_address']), $authorize_link); } else { $email = isset($validation_error['invalid_sender_address']) ? $validation_error['invalid_sender_address'] : $validation_error['invalid_confirmation_address'];