From 11b22fa63ab5aa638244e3c99c1140e7cc6ac00e Mon Sep 17 00:00:00 2001 From: Vlad Date: Tue, 19 Apr 2016 20:59:49 -0400 Subject: [PATCH] - Enables newsletter open tracking when links are clicked --- lib/Statistics/Track/Clicks.php | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/Statistics/Track/Clicks.php b/lib/Statistics/Track/Clicks.php index 71c5113a98..e7a0889c34 100644 --- a/lib/Statistics/Track/Clicks.php +++ b/lib/Statistics/Track/Clicks.php @@ -5,11 +5,10 @@ use MailPoet\Models\NewsletterLink; use MailPoet\Models\StatisticsClicks; use MailPoet\Models\Subscriber; use MailPoet\Subscription\Url as SubscriptionUrl; -use MailPoet\Util\Helpers; if(!defined('ABSPATH')) exit; -class Click { +class Clicks { public $url; function __construct($url) { @@ -23,13 +22,17 @@ class Click { $subscriber = Subscriber::findOne($subscriber_id); $link = NewsletterLink::where('hash', $hash) ->findOne(); - if(!$link || !$subscriber) $this->abort(); + if(!$subscriber) return; + if(!$link) $this->abort(); $statistics = StatisticsClicks::where('link_id', $link->id) ->where('subscriber_id', $subscriber_id) ->where('newsletter_id', $newsletter_id) ->where('queue_id', $queue_id) ->findOne(); if(!$statistics) { + // track open action in case it did not register + $opens = new Opens($url); + $opens->track(); $statistics = StatisticsClicks::create(); $statistics->newsletter_id = $newsletter_id; $statistics->link_id = $link->id;