Add more supported fields to save method
[MAILPOET-3031]
This commit is contained in:
@@ -12,6 +12,7 @@ use MailPoet\Settings\SettingsController;
|
|||||||
use MailPoet\Statistics\Track\Unsubscribes;
|
use MailPoet\Statistics\Track\Unsubscribes;
|
||||||
use MailPoet\Util\Security;
|
use MailPoet\Util\Security;
|
||||||
use MailPoet\WP\Functions as WPFunctions;
|
use MailPoet\WP\Functions as WPFunctions;
|
||||||
|
use MailPoetVendor\Carbon\Carbon;
|
||||||
|
|
||||||
class SubscriberSaveController {
|
class SubscriberSaveController {
|
||||||
/** @var CustomFieldsRepository */
|
/** @var CustomFieldsRepository */
|
||||||
@@ -165,6 +166,13 @@ class SubscriberSaveController {
|
|||||||
if (isset($data['last_name'])) $subscriber->setLastName($data['last_name']);
|
if (isset($data['last_name'])) $subscriber->setLastName($data['last_name']);
|
||||||
if (isset($data['status'])) $subscriber->setStatus($data['status']);
|
if (isset($data['status'])) $subscriber->setStatus($data['status']);
|
||||||
if (isset($data['source'])) $subscriber->setSource($data['source']);
|
if (isset($data['source'])) $subscriber->setSource($data['source']);
|
||||||
|
if (isset($data['wp_user_id'])) $subscriber->setWpUserId($data['wp_user_id']);
|
||||||
|
if (isset($data['subscribed_ip'])) $subscriber->setSubscribedIp($data['subscribed_ip']);
|
||||||
|
if (isset($data['confirmed_ip'])) $subscriber->setConfirmedIp($data['confirmed_ip']);
|
||||||
|
$createdAt = isset($data['created_at']) ? Carbon::createFromFormat('Y-m-d H:i:s', $data['created_at']) : null;
|
||||||
|
if ($createdAt) $subscriber->setCreatedAt($createdAt);
|
||||||
|
$confirmedAt = isset($data['confirmed_at']) ? Carbon::createFromFormat('Y-m-d H:i:s', $data['confirmed_at']) : null;
|
||||||
|
if ($confirmedAt) $subscriber->setConfirmedAt($confirmedAt);
|
||||||
|
|
||||||
$this->subscribersRepository->persist($subscriber);
|
$this->subscribersRepository->persist($subscriber);
|
||||||
$this->subscribersRepository->flush();
|
$this->subscribersRepository->flush();
|
||||||
|
@@ -6,6 +6,7 @@ use MailPoet\Entities\SegmentEntity;
|
|||||||
use MailPoet\Entities\SubscriberEntity;
|
use MailPoet\Entities\SubscriberEntity;
|
||||||
use MailPoet\Entities\SubscriberSegmentEntity;
|
use MailPoet\Entities\SubscriberSegmentEntity;
|
||||||
use MailPoet\Segments\SegmentsRepository;
|
use MailPoet\Segments\SegmentsRepository;
|
||||||
|
use MailPoetVendor\Carbon\Carbon;
|
||||||
|
|
||||||
class SubscriberSaveControllerTest extends \MailPoetTest {
|
class SubscriberSaveControllerTest extends \MailPoetTest {
|
||||||
/** @var SubscriberSaveController */
|
/** @var SubscriberSaveController */
|
||||||
@@ -33,6 +34,11 @@ class SubscriberSaveControllerTest extends \MailPoetTest {
|
|||||||
$segmentOne->getId(),
|
$segmentOne->getId(),
|
||||||
$segmentTwo->getId(),
|
$segmentTwo->getId(),
|
||||||
],
|
],
|
||||||
|
'created_at' => '2020-04-30 13:14:15',
|
||||||
|
'confirmed_at' => '2020-04-31 13:14:15',
|
||||||
|
'confirmed_ip' => '192.168.1.32',
|
||||||
|
'subscribed_ip' => '192.168.1.16',
|
||||||
|
'wp_user_id' => 7,
|
||||||
];
|
];
|
||||||
|
|
||||||
$subscriber = $this->saveController->save($data);
|
$subscriber = $this->saveController->save($data);
|
||||||
@@ -40,6 +46,11 @@ class SubscriberSaveControllerTest extends \MailPoetTest {
|
|||||||
expect($subscriber->getStatus())->equals($data['status']);
|
expect($subscriber->getStatus())->equals($data['status']);
|
||||||
expect($subscriber->getFirstName())->equals($data['first_name']);
|
expect($subscriber->getFirstName())->equals($data['first_name']);
|
||||||
expect($subscriber->getLastName())->equals($data['last_name']);
|
expect($subscriber->getLastName())->equals($data['last_name']);
|
||||||
|
expect($subscriber->getCreatedAt())->equals(Carbon::createFromFormat('Y-m-d H:i:s', $data['created_at']));
|
||||||
|
expect($subscriber->getConfirmedAt())->equals(Carbon::createFromFormat('Y-m-d H:i:s', $data['confirmed_at']));
|
||||||
|
expect($subscriber->getConfirmedIp())->equals($data['confirmed_ip']);
|
||||||
|
expect($subscriber->getSubscribedIp())->equals($data['subscribed_ip']);
|
||||||
|
expect($subscriber->getWpUserId())->equals($data['wp_user_id']);
|
||||||
expect($subscriber->getUnsubscribeToken())->notNull();
|
expect($subscriber->getUnsubscribeToken())->notNull();
|
||||||
expect($subscriber->getLinkToken())->notNull();
|
expect($subscriber->getLinkToken())->notNull();
|
||||||
expect($subscriber->getId())->notNull();
|
expect($subscriber->getId())->notNull();
|
||||||
|
Reference in New Issue
Block a user