44
55namespace PhpList \Core \Domain \Subscription \Service \Manager ;
66
7+ use PhpList \Core \Domain \Common \I18n \Messages ;
78use PhpList \Core \Domain \Subscription \Exception \SubscriptionCreationException ;
89use PhpList \Core \Domain \Subscription \Model \Subscriber ;
910use PhpList \Core \Domain \Subscription \Model \SubscriberList ;
1011use PhpList \Core \Domain \Subscription \Model \Subscription ;
1112use PhpList \Core \Domain \Subscription \Repository \SubscriberListRepository ;
1213use PhpList \Core \Domain \Subscription \Repository \SubscriberRepository ;
1314use PhpList \Core \Domain \Subscription \Repository \SubscriptionRepository ;
15+ use Symfony \Contracts \Translation \TranslatorInterface ;
1416
1517class SubscriptionManager
1618{
1719 private SubscriptionRepository $ subscriptionRepository ;
1820 private SubscriberRepository $ subscriberRepository ;
1921 private SubscriberListRepository $ subscriberListRepository ;
22+ private TranslatorInterface $ translator ;
2023
2124 public function __construct (
2225 SubscriptionRepository $ subscriptionRepository ,
2326 SubscriberRepository $ subscriberRepository ,
24- SubscriberListRepository $ subscriberListRepository
27+ SubscriberListRepository $ subscriberListRepository ,
28+ TranslatorInterface $ translator
2529 ) {
2630 $ this ->subscriptionRepository = $ subscriptionRepository ;
2731 $ this ->subscriberRepository = $ subscriberRepository ;
2832 $ this ->subscriberListRepository = $ subscriberListRepository ;
33+ $ this ->translator = $ translator ;
2934 }
3035
3136 public function addSubscriberToAList (Subscriber $ subscriber , int $ listId ): Subscription
@@ -37,7 +42,8 @@ public function addSubscriberToAList(Subscriber $subscriber, int $listId): Subsc
3742 }
3843 $ subscriberList = $ this ->subscriberListRepository ->find ($ listId );
3944 if (!$ subscriberList ) {
40- throw new SubscriptionCreationException ('Subscriber list not found. ' , 404 );
45+ $ message = $ this ->translator ->trans (Messages::SUBSCRIPTION_LIST_NOT_FOUND );
46+ throw new SubscriptionCreationException ($ message , 404 );
4147 }
4248
4349 $ subscription = new Subscription ();
@@ -64,7 +70,8 @@ private function createSubscription(SubscriberList $subscriberList, string $emai
6470 {
6571 $ subscriber = $ this ->subscriberRepository ->findOneBy (['email ' => $ email ]);
6672 if (!$ subscriber ) {
67- throw new SubscriptionCreationException ('Subscriber does not exists. ' , 404 );
73+ $ message = $ this ->translator ->trans (Messages::SUBSCRIPTION_SUBSCRIBER_NOT_FOUND );
74+ throw new SubscriptionCreationException ($ message , 404 );
6875 }
6976
7077 $ existingSubscription = $ this ->subscriptionRepository
@@ -101,7 +108,8 @@ private function deleteSubscription(SubscriberList $subscriberList, string $emai
101108 ->findOneBySubscriberEmailAndListId ($ subscriberList ->getId (), $ email );
102109
103110 if (!$ subscription ) {
104- throw new SubscriptionCreationException ('Subscription not found for this subscriber and list. ' , 404 );
111+ $ message = $ this ->translator ->trans (Messages::SUBSCRIPTION_NOT_FOUND_FOR_LIST_AND_SUBSCRIBER );
112+ throw new SubscriptionCreationException ($ message , 404 );
105113 }
106114
107115 $ this ->subscriptionRepository ->remove ($ subscription );
0 commit comments