Move plugin files to a subfolder
[MAILPOET-3988]
This commit is contained in:
32
mailpoet/lib/Subscribers/SubscriberCustomFieldRepository.php
Normal file
32
mailpoet/lib/Subscribers/SubscriberCustomFieldRepository.php
Normal file
@ -0,0 +1,32 @@
|
||||
<?php
|
||||
|
||||
namespace MailPoet\Subscribers;
|
||||
|
||||
use MailPoet\Doctrine\Repository;
|
||||
use MailPoet\Entities\CustomFieldEntity;
|
||||
use MailPoet\Entities\SubscriberCustomFieldEntity;
|
||||
use MailPoet\Entities\SubscriberEntity;
|
||||
|
||||
/**
|
||||
* @extends Repository<SubscriberCustomFieldEntity>
|
||||
*/
|
||||
class SubscriberCustomFieldRepository extends Repository {
|
||||
protected function getEntityClassName() {
|
||||
return SubscriberCustomFieldEntity::class;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string|array|null $value
|
||||
*/
|
||||
public function createOrUpdate(SubscriberEntity $subscriber, CustomFieldEntity $customField, $value): SubscriberCustomFieldEntity {
|
||||
$subscriberCustomField = $this->findOneBy(['subscriber' => $subscriber, 'customField' => $customField]);
|
||||
if ($subscriberCustomField instanceof SubscriberCustomFieldEntity) {
|
||||
$subscriberCustomField->setValue($value);
|
||||
} else {
|
||||
$subscriberCustomField = new SubscriberCustomFieldEntity($subscriber, $customField, $value);
|
||||
$this->entityManager->persist($subscriberCustomField);
|
||||
}
|
||||
$this->entityManager->flush();
|
||||
return $subscriberCustomField;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user