Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
primogenial
/
languages
/
wp-content-20241001222009
/
plugins
/
mailpoet
/
lib
/
Statistics
:
StatisticsFormsRepository.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php namespace MailPoet\Statistics; if (!defined('ABSPATH')) exit; use MailPoet\Doctrine\Repository; use MailPoet\Entities\FormEntity; use MailPoet\Entities\StatisticsFormEntity; use MailPoet\Entities\SubscriberEntity; /** * @extends Repository<StatisticsFormEntity> */ class StatisticsFormsRepository extends Repository { protected function getEntityClassName() { return StatisticsFormEntity::class; } public function getTotalSignups(int $formId): int { return $this->countBy(['form' => $formId]); } public function record(FormEntity $form, SubscriberEntity $subscriber): ?StatisticsFormEntity { if ($form->getId() > 0 && $subscriber->getId() > 0) { // check if we already have a record for today $statisticsForm = $this->findOneBy(['form' => $form, 'subscriber' => $subscriber]); if (!$statisticsForm) { // create a new entry $statisticsForm = new StatisticsFormEntity($form, $subscriber); $this->persist($statisticsForm); $this->flush(); } return $statisticsForm; } return null; } }