Merge branch 'master' of https://github.com/mailpoet/mailpoet into best_api_error_message
This commit is contained in:
@ -99,8 +99,7 @@ class Newsletters extends APIEndpoint {
|
||||
}
|
||||
}
|
||||
// reload newsletter with updated options
|
||||
$newsletter = Newsletter::filter('filterWithOptions')
|
||||
->findOne($newsletter->id);
|
||||
$newsletter = Newsletter::filter('filterWithOptions', $newsletter->type)->findOne($newsletter->id);
|
||||
// if this is a post notification, process newsletter options and update its schedule
|
||||
if($newsletter->type === Newsletter::TYPE_NOTIFICATION) {
|
||||
// generate the new schedule from options and get the new "next run" date
|
||||
@ -151,7 +150,7 @@ class Newsletters extends APIEndpoint {
|
||||
}
|
||||
|
||||
$id = (isset($data['id'])) ? (int)$data['id'] : false;
|
||||
$newsletter = Newsletter::filter('filterWithOptions')->findOne($id);
|
||||
$newsletter = Newsletter::findOneWithOptions($id);
|
||||
|
||||
if($newsletter === false) {
|
||||
return $this->errorResponse(array(
|
||||
@ -487,7 +486,7 @@ class Newsletters extends APIEndpoint {
|
||||
&&
|
||||
$data['type'] === Newsletter::TYPE_NOTIFICATION
|
||||
) {
|
||||
$newsletter = Newsletter::filter('filterWithOptions')->findOne($newsletter->id);
|
||||
$newsletter = Newsletter::filter('filterWithOptions', $data['type'])->findOne($newsletter->id);
|
||||
Scheduler::processPostNotificationSchedule($newsletter);
|
||||
}
|
||||
|
||||
|
@ -25,8 +25,7 @@ class SendingQueue extends APIEndpoint {
|
||||
);
|
||||
|
||||
// check that the newsletter exists
|
||||
$newsletter = Newsletter::filter('filterWithOptions')
|
||||
->findOne($newsletter_id);
|
||||
$newsletter = Newsletter::findOneWithOptions($newsletter_id);
|
||||
|
||||
if($newsletter === false) {
|
||||
return $this->errorResponse(array(
|
||||
|
@ -7,6 +7,7 @@ use MailPoet\Models\Subscriber;
|
||||
use MailPoet\Models\SubscriberSegment;
|
||||
use MailPoet\Newsletter\Scheduler\Scheduler;
|
||||
use MailPoet\Subscribers\Source;
|
||||
use MailPoet\Tasks\Sending;
|
||||
|
||||
if(!defined('ABSPATH')) exit;
|
||||
|
||||
@ -186,7 +187,12 @@ class API {
|
||||
|
||||
// send confirmation email
|
||||
if($send_confirmation_email && $new_subscriber->status === Subscriber::STATUS_UNCONFIRMED) {
|
||||
$this->_sendConfirmationEmail($new_subscriber);
|
||||
$result = $this->_sendConfirmationEmail($new_subscriber);
|
||||
if(!$result && $new_subscriber->getErrors()) {
|
||||
throw new \Exception(
|
||||
__(sprintf('Subscriber added, but confirmation email failed to send: %s', strtolower(implode(', ', $new_subscriber->getErrors()))), 'mailpoet')
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
// schedule welcome email(s)
|
||||
@ -242,6 +248,16 @@ class API {
|
||||
}
|
||||
|
||||
protected function _scheduleWelcomeNotification(Subscriber $subscriber, array $segments) {
|
||||
return Scheduler::scheduleSubscriberWelcomeNotification($subscriber->id, $segments);
|
||||
$result = Scheduler::scheduleSubscriberWelcomeNotification($subscriber->id, $segments);
|
||||
if(is_array($result)) {
|
||||
foreach($result as $queue) {
|
||||
if($queue instanceof Sending && $queue->getErrors()) {
|
||||
throw new \Exception(
|
||||
__(sprintf('Subscriber added, but welcome email failed to send: %s', strtolower(implode(', ', $queue->getErrors()))), 'mailpoet')
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user