Use Newsletter\Url as service
[MAILPOET-3269]
This commit is contained in:
@ -32,14 +32,19 @@ class NewslettersResponseBuilder {
|
||||
/** @var EntityManager */
|
||||
private $entityManager;
|
||||
|
||||
/** @var NewsletterUrl */
|
||||
private $newsletterUrl;
|
||||
|
||||
public function __construct(
|
||||
EntityManager $entityManager,
|
||||
NewslettersRepository $newslettersRepository,
|
||||
NewsletterStatisticsRepository $newslettersStatsRepository
|
||||
NewsletterStatisticsRepository $newslettersStatsRepository,
|
||||
NewsletterUrl $newsletterUrl
|
||||
) {
|
||||
$this->newslettersStatsRepository = $newslettersStatsRepository;
|
||||
$this->newslettersRepository = $newslettersRepository;
|
||||
$this->entityManager = $entityManager;
|
||||
$this->newsletterUrl = $newsletterUrl;
|
||||
}
|
||||
|
||||
public function build(NewsletterEntity $newsletter, $relations = []) {
|
||||
@ -125,7 +130,7 @@ class NewslettersResponseBuilder {
|
||||
'statistics' => ($statistics && $newsletter->getType() !== NewsletterEntity::TYPE_NOTIFICATION)
|
||||
? $statistics->asArray()
|
||||
: false,
|
||||
'preview_url' => NewsletterUrl::getViewInBrowserUrl(
|
||||
'preview_url' => $this->newsletterUrl->getViewInBrowserUrl(
|
||||
(object)[
|
||||
'id' => $newsletter->getId(),
|
||||
'hash' => $newsletter->getHash(),
|
||||
|
@ -72,6 +72,9 @@ class Newsletters extends APIEndpoint {
|
||||
/** @var NewsletterSaveController */
|
||||
private $newsletterSaveController;
|
||||
|
||||
/** @var NewsletterUrl */
|
||||
private $newsletterUrl;
|
||||
|
||||
public function __construct(
|
||||
Listing\Handler $listingHandler,
|
||||
WPFunctions $wp,
|
||||
@ -84,7 +87,8 @@ class Newsletters extends APIEndpoint {
|
||||
Emoji $emoji,
|
||||
SubscribersFeature $subscribersFeature,
|
||||
SendPreviewController $sendPreviewController,
|
||||
NewsletterSaveController $newsletterSaveController
|
||||
NewsletterSaveController $newsletterSaveController,
|
||||
NewsletterUrl $newsletterUrl
|
||||
) {
|
||||
$this->listingHandler = $listingHandler;
|
||||
$this->wp = $wp;
|
||||
@ -98,6 +102,7 @@ class Newsletters extends APIEndpoint {
|
||||
$this->subscribersFeature = $subscribersFeature;
|
||||
$this->sendPreviewController = $sendPreviewController;
|
||||
$this->newsletterSaveController = $newsletterSaveController;
|
||||
$this->newsletterUrl = $newsletterUrl;
|
||||
}
|
||||
|
||||
public function get($data = []) {
|
||||
@ -375,7 +380,7 @@ class Newsletters extends APIEndpoint {
|
||||
|
||||
private function getViewInBrowserUrl(NewsletterEntity $newsletter): string {
|
||||
$this->fixMissingHash([$newsletter]); // Fix for MAILPOET-3275. Remove after May 2021
|
||||
$url = NewsletterUrl::getViewInBrowserUrl(
|
||||
$url = $this->newsletterUrl->getViewInBrowserUrl(
|
||||
(object)[
|
||||
'id' => $newsletter->getId(),
|
||||
'hash' => $newsletter->getHash(),
|
||||
|
Reference in New Issue
Block a user