Add ALC filter to use posts created after last newsletter was sent
This commit is contained in:
@@ -5,4 +5,10 @@ if(!defined('ABSPATH')) exit;
|
|||||||
|
|
||||||
class NewsletterPost extends Model {
|
class NewsletterPost extends Model {
|
||||||
public static $_table = MP_NEWSLETTER_POSTS_TABLE;
|
public static $_table = MP_NEWSLETTER_POSTS_TABLE;
|
||||||
|
|
||||||
|
static function getNewestNewsletterPost($newsletter_id) {
|
||||||
|
return self::where('newsletter_id', $newsletter_id)
|
||||||
|
->orderByDesc('created_at')
|
||||||
|
->findOne();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -2,6 +2,7 @@
|
|||||||
namespace MailPoet\Newsletter\Renderer\Blocks;
|
namespace MailPoet\Newsletter\Renderer\Blocks;
|
||||||
|
|
||||||
use MailPoet\Models\Newsletter;
|
use MailPoet\Models\Newsletter;
|
||||||
|
use MailPoet\Models\NewsletterPost;
|
||||||
use MailPoet\Newsletter\Renderer\StylesHelper;
|
use MailPoet\Newsletter\Renderer\StylesHelper;
|
||||||
|
|
||||||
class Renderer {
|
class Renderer {
|
||||||
@@ -14,14 +15,23 @@ class Renderer {
|
|||||||
$this->posts = array();
|
$this->posts = array();
|
||||||
if($newsletter['type'] === Newsletter::TYPE_NOTIFICATION_HISTORY) {
|
if($newsletter['type'] === Newsletter::TYPE_NOTIFICATION_HISTORY) {
|
||||||
$newsletter_id = $newsletter['parent_id'];
|
$newsletter_id = $newsletter['parent_id'];
|
||||||
|
|
||||||
|
$last_post = NewsletterPost::getNewestNewsletterPost($newsletter_id);
|
||||||
|
if($last_post) {
|
||||||
|
$newer_than_timestamp = $last_post->created_at;
|
||||||
|
} else {
|
||||||
|
$newer_than_timestamp = $newsletter['created_at'];
|
||||||
|
}
|
||||||
} else if($preview) {
|
} else if($preview) {
|
||||||
$newsletter_id = false;
|
$newsletter_id = false;
|
||||||
|
$newer_than_timestamp = false;
|
||||||
} else {
|
} else {
|
||||||
$newsletter_id = $newsletter['id'];
|
$newsletter_id = $newsletter['id'];
|
||||||
|
$newer_than_timestamp = false;
|
||||||
}
|
}
|
||||||
$this->ALC = new \MailPoet\Newsletter\AutomatedLatestContent(
|
$this->ALC = new \MailPoet\Newsletter\AutomatedLatestContent(
|
||||||
$newsletter_id,
|
$newsletter_id,
|
||||||
$newsletter['created_at']
|
$newer_than_timestamp
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user