Return updated Newsletter entity from save controller
[MAILPOET-2900]
This commit is contained in:
@ -143,8 +143,10 @@ class Newsletters extends APIEndpoint {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function save($data = []) {
|
public function save($data = []) {
|
||||||
list($data, $meta) = $this->newsletterSaveController->save($data);
|
$newsletter = $this->newsletterSaveController->save($data);
|
||||||
return $this->successResponse($data, $meta);
|
$response = $this->newslettersResponseBuilder->build($newsletter);
|
||||||
|
$previewUrl = $this->getViewInBrowserUrl($newsletter);
|
||||||
|
return $this->successResponse($response, ['preview_url' => $previewUrl]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function setStatus($data = []) {
|
public function setStatus($data = []) {
|
||||||
|
@ -17,7 +17,6 @@ use MailPoet\Newsletter\Scheduler\PostNotificationScheduler;
|
|||||||
use MailPoet\Newsletter\Scheduler\Scheduler;
|
use MailPoet\Newsletter\Scheduler\Scheduler;
|
||||||
use MailPoet\Newsletter\Segment\NewsletterSegmentRepository;
|
use MailPoet\Newsletter\Segment\NewsletterSegmentRepository;
|
||||||
use MailPoet\Newsletter\Sending\ScheduledTasksRepository;
|
use MailPoet\Newsletter\Sending\ScheduledTasksRepository;
|
||||||
use MailPoet\Newsletter\Url as NewsletterUrl;
|
|
||||||
use MailPoet\NewsletterTemplates\NewsletterTemplatesRepository;
|
use MailPoet\NewsletterTemplates\NewsletterTemplatesRepository;
|
||||||
use MailPoet\NotFoundException;
|
use MailPoet\NotFoundException;
|
||||||
use MailPoet\Services\AuthorizedEmailsController;
|
use MailPoet\Services\AuthorizedEmailsController;
|
||||||
@ -92,7 +91,7 @@ class NewsletterSaveController {
|
|||||||
$this->wp = $wp;
|
$this->wp = $wp;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function save(array $data = []): array {
|
public function save(array $data = []): NewsletterEntity {
|
||||||
$data = $this->wp->applyFilters('mailpoet_api_newsletters_save_before', $data);
|
$data = $this->wp->applyFilters('mailpoet_api_newsletters_save_before', $data);
|
||||||
|
|
||||||
if (!empty($data['template_id'])) {
|
if (!empty($data['template_id'])) {
|
||||||
@ -132,9 +131,7 @@ class NewsletterSaveController {
|
|||||||
|
|
||||||
$this->wp->doAction('mailpoet_api_newsletters_save_after', $newsletterModel);
|
$this->wp->doAction('mailpoet_api_newsletters_save_after', $newsletterModel);
|
||||||
$this->authorizedEmailsController->onNewsletterSenderAddressUpdate($newsletter, $oldSenderAddress);
|
$this->authorizedEmailsController->onNewsletterSenderAddressUpdate($newsletter, $oldSenderAddress);
|
||||||
|
return $newsletter;
|
||||||
$previewUrl = NewsletterUrl::getViewInBrowserUrl($newsletterModel);
|
|
||||||
return [$newsletterModel->asArray(), ['preview_url' => $previewUrl]];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private function getNewsletter(array $data): NewsletterEntity {
|
private function getNewsletter(array $data): NewsletterEntity {
|
||||||
|
Reference in New Issue
Block a user