diff --git a/lib/Subscription/Pages.php b/lib/Subscription/Pages.php index 7a8f8c59c6..aba0b53286 100644 --- a/lib/Subscription/Pages.php +++ b/lib/Subscription/Pages.php @@ -177,8 +177,8 @@ class Pages { ); } - // Send new subscriber notification only when status changes to subscribed to avoid spamming - if ($originalStatus !== Subscriber::STATUS_SUBSCRIBED) { + // Send new subscriber notification only when status changes to subscribed or there are unconfirmed data to avoid spamming + if ($originalStatus !== Subscriber::STATUS_SUBSCRIBED || $subscriberData !== null) { $this->newSubscriberNotificationSender->send($this->subscriber, $subscriberSegments); } diff --git a/tests/integration/Subscription/PagesTest.php b/tests/integration/Subscription/PagesTest.php index 6b51e7be2e..c181d53d92 100644 --- a/tests/integration/Subscription/PagesTest.php +++ b/tests/integration/Subscription/PagesTest.php @@ -75,7 +75,7 @@ class PagesTest extends \MailPoetTest { $subscriber = $this->subscriber; $subscriber->setStatus(Subscriber::STATUS_SUBSCRIBED); $subscriber->setFirstName('First name'); - $subscriber->setUnconfirmedData('{"first_name" : "Updated first name", "email" : "' . $this->subscriber->getEmail() . '"}'); + $subscriber->setUnconfirmedData(null); $subscriber->setLastSubscribedAt(Carbon::createFromTimestamp($this->wp->currentTime('timestamp'))->subDays(10)); $subscriber->setConfirmedIp(Carbon::createFromTimestamp($this->wp->currentTime('timestamp'))->subDays(10)); $this->entityManager->flush(); @@ -89,7 +89,7 @@ class PagesTest extends \MailPoetTest { expect($confirmedSubscriber->getConfirmedAt())->lessOrEquals(Carbon::createFromTimestamp($this->wp->currentTime('timestamp'))->addSecond()); expect($confirmedSubscriber->getLastSubscribedAt())->greaterOrEquals(Carbon::createFromTimestamp($this->wp->currentTime('timestamp'))->subSecond()); expect($confirmedSubscriber->getLastSubscribedAt())->lessOrEquals(Carbon::createFromTimestamp($this->wp->currentTime('timestamp'))->addSecond()); - expect($confirmedSubscriber->getFirstName())->equals('Updated first name'); + expect($confirmedSubscriber->getFirstName())->equals('First name'); } public function testItSendsWelcomeNotificationUponConfirmingSubscription() {