get(EntityManager::class); return static::tableAlias('statistics') ->select('statistics.newsletter_id', 'newsletter_id') ->select('newsletter_rendered_subject') ->select('opens.created_at', 'opened_at') ->select('sent_at') ->join( SendingQueue::$_table, ['statistics.queue_id', '=', 'queue.id'], 'queue' ) ->leftOuterJoin( $entityManager->getClassMetadata(StatisticsOpenEntity::class)->getTableName(), 'statistics.newsletter_id = opens.newsletter_id AND statistics.subscriber_id = opens.subscriber_id', 'opens' ) ->where('statistics.subscriber_id', $subscriber->getId()) ->orderByAsc('newsletter_id'); } /** * @deprecated This is here for displaying the deprecation warning for properties. */ public function __get($key) { self::deprecationError('property "' . $key . '"'); return parent::__get($key); } /** * @deprecated This is here for displaying the deprecation warning for static calls. */ public static function __callStatic($name, $arguments) { self::deprecationError($name); return parent::__callStatic($name, $arguments); } private static function deprecationError($methodName) { trigger_error( 'Calling ' . esc_html($methodName) . ' is deprecated and will be removed. Use \MailPoet\Statistics\StatisticsNewslettersRepository and \MailPoet\Entities\StatisticsNewsletterEntity instead.', E_USER_DEPRECATED ); } }