type fixes
This commit is contained in:
@@ -38,6 +38,9 @@ use Espo\Core\{
|
||||
Acl\Traits\DefaultAccessCheckerDependency,
|
||||
};
|
||||
|
||||
/**
|
||||
* @implements AccessEntityCREDChecker<\Espo\Entities\AuthToken>
|
||||
*/
|
||||
class AccessChecker implements AccessEntityCREDChecker
|
||||
{
|
||||
use DefaultAccessCheckerDependency;
|
||||
|
||||
@@ -42,6 +42,9 @@ use Espo\Core\{
|
||||
Acl\Traits\DefaultAccessCheckerDependency,
|
||||
};
|
||||
|
||||
/**
|
||||
* @implements AccessEntityCREDSChecker<\Espo\Entities\Email>
|
||||
*/
|
||||
class AccessChecker implements AccessEntityCREDSChecker
|
||||
{
|
||||
use DefaultAccessCheckerDependency;
|
||||
|
||||
@@ -39,6 +39,10 @@ use Espo\Core\{
|
||||
Acl\AccessEntityDeleteChecker,
|
||||
};
|
||||
|
||||
/**
|
||||
* @implements AccessEntityReadChecker<\Espo\Entities\Import>
|
||||
* @implements AccessEntityDeleteChecker<\Espo\Entities\Import>
|
||||
*/
|
||||
class AccessChecker implements AccessEntityReadChecker, AccessEntityDeleteChecker
|
||||
{
|
||||
public function check(User $user, ScopeData $data): bool
|
||||
|
||||
@@ -46,6 +46,9 @@ use Espo\Core\{
|
||||
use DateTime;
|
||||
use Exception;
|
||||
|
||||
/**
|
||||
* @implements AccessEntityCREDChecker<\Espo\Entities\Note>
|
||||
*/
|
||||
class AccessChecker implements AccessEntityCREDChecker
|
||||
{
|
||||
use DefaultAccessCheckerDependency;
|
||||
|
||||
@@ -40,6 +40,9 @@ use Espo\Core\{
|
||||
AclManager,
|
||||
};
|
||||
|
||||
/**
|
||||
* @implements AccessEntityCREDChecker<\Espo\Entities\Portal>
|
||||
*/
|
||||
class AccessChecker implements AccessEntityCREDChecker
|
||||
{
|
||||
use DefaultAccessCheckerDependency;
|
||||
|
||||
@@ -40,6 +40,9 @@ use Espo\Core\{
|
||||
Acl\Traits\DefaultAccessCheckerDependency,
|
||||
};
|
||||
|
||||
/**
|
||||
* @implements AccessEntityCREDChecker<\Espo\Entities\ScheduledJob>
|
||||
*/
|
||||
class AccessChecker implements AccessEntityCREDChecker
|
||||
{
|
||||
use DefaultAccessCheckerDependency;
|
||||
|
||||
@@ -40,6 +40,9 @@ use Espo\Core\{
|
||||
Acl\Traits\DefaultAccessCheckerDependency,
|
||||
};
|
||||
|
||||
/**
|
||||
* @implements AccessEntityCREDChecker<\Espo\Entities\Webhook>
|
||||
*/
|
||||
class AccessChecker implements AccessEntityCREDChecker
|
||||
{
|
||||
use DefaultAccessCheckerDependency;
|
||||
|
||||
@@ -43,6 +43,9 @@ use Espo\Core\{
|
||||
Portal\Acl\Traits\DefaultAccessCheckerDependency,
|
||||
};
|
||||
|
||||
/**
|
||||
* @implements AccessEntityCREDSChecker<\Espo\Entities\Email>
|
||||
*/
|
||||
class AccessChecker implements AccessEntityCREDSChecker
|
||||
{
|
||||
use DefaultAccessCheckerDependency;
|
||||
|
||||
@@ -46,6 +46,9 @@ use Espo\Core\{
|
||||
use DateTime;
|
||||
use Exception;
|
||||
|
||||
/**
|
||||
* @implements AccessEntityCREDChecker<\Espo\Entities\Note>
|
||||
*/
|
||||
class AccessChecker implements AccessEntityCREDChecker
|
||||
{
|
||||
use DefaultAccessCheckerDependency;
|
||||
|
||||
@@ -40,20 +40,11 @@ use Espo\Core\{
|
||||
*/
|
||||
class TemplateEntityTypeList
|
||||
{
|
||||
/**
|
||||
* @var Acl
|
||||
*/
|
||||
protected $acl;
|
||||
private $acl;
|
||||
|
||||
/**
|
||||
* @var SelectBuilderFactory
|
||||
*/
|
||||
protected $selectBuilderFactory;
|
||||
private $selectBuilderFactory;
|
||||
|
||||
/**
|
||||
* @var EntityManager
|
||||
*/
|
||||
protected $entityManager;
|
||||
private $entityManager;
|
||||
|
||||
public function __construct(Acl $acl, SelectBuilderFactory $selectBuilderFactory, EntityManager $entityManager)
|
||||
{
|
||||
@@ -62,6 +53,9 @@ class TemplateEntityTypeList
|
||||
$this->entityManager = $entityManager;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string[]
|
||||
*/
|
||||
public function get(): array
|
||||
{
|
||||
if (!$this->acl->checkScope('Template')) {
|
||||
|
||||
@@ -55,7 +55,7 @@ class Email implements AssignmentNotificator
|
||||
{
|
||||
private const DAYS_THRESHOLD = 2;
|
||||
|
||||
private $streamService = null;
|
||||
private ?StreamService $streamService = null;
|
||||
|
||||
private $user;
|
||||
|
||||
|
||||
@@ -43,7 +43,7 @@ class Exports implements Cleanup
|
||||
|
||||
private $entityManager;
|
||||
|
||||
private $cleanupPeriod = '2 days';
|
||||
private string $cleanupPeriod = '2 days';
|
||||
|
||||
public function __construct(Config $config, EntityManager $entityManager)
|
||||
{
|
||||
|
||||
@@ -41,7 +41,7 @@ class MassActions implements Cleanup
|
||||
|
||||
private $entityManager;
|
||||
|
||||
private $cleanupPeriod = '14 days';
|
||||
private string $cleanupPeriod = '14 days';
|
||||
|
||||
public function __construct(Config $config, EntityManager $entityManager)
|
||||
{
|
||||
|
||||
@@ -41,7 +41,7 @@ class Reminders implements Cleanup
|
||||
|
||||
private $entityManager;
|
||||
|
||||
private $cleanupRemindersPeriod = '15 days';
|
||||
private string $cleanupRemindersPeriod = '15 days';
|
||||
|
||||
public function __construct(Config $config, EntityManager $entityManager)
|
||||
{
|
||||
|
||||
@@ -37,7 +37,7 @@ use DateTime;
|
||||
|
||||
class WebhookQueue implements Cleanup
|
||||
{
|
||||
private $cleanupWebhookQueuePeriod = '10 days';
|
||||
private string $cleanupWebhookQueuePeriod = '10 days';
|
||||
|
||||
private $config;
|
||||
|
||||
|
||||
@@ -33,32 +33,32 @@ use Espo\Core\Utils\Metadata;
|
||||
|
||||
class DefaultSidePanelType
|
||||
{
|
||||
protected $metadata;
|
||||
private $metadata;
|
||||
|
||||
public function __construct(Metadata $metadata)
|
||||
{
|
||||
$this->metadata = $metadata;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return \stdClass[]
|
||||
*/
|
||||
public function get(string $scope): array
|
||||
{
|
||||
$list = [];
|
||||
|
||||
if (
|
||||
$this->metadata->get(['entityDefs', $scope, 'fields', 'assignedUser', 'type']) === 'link'
|
||||
&&
|
||||
$this->metadata->get(['entityDefs', $scope, 'fields', 'assignedUser', 'type']) === 'link' &&
|
||||
$this->metadata->get(['entityDefs', $scope, 'links', 'assignedUser', 'entity']) === 'User'
|
||||
||
|
||||
$this->metadata->get(['entityDefs', $scope, 'fields', 'assignedUsers', 'type']) === 'linkMultiple'
|
||||
&&
|
||||
$this->metadata->get(['entityDefs', $scope, 'fields', 'assignedUsers', 'type']) === 'linkMultiple' &&
|
||||
$this->metadata->get(['entityDefs', $scope, 'links', 'assignedUsers', 'entity']) === 'User'
|
||||
) {
|
||||
$list[] = (object) ['name' => ':assignedUser'];
|
||||
}
|
||||
|
||||
if (
|
||||
$this->metadata->get(['entityDefs', $scope, 'fields', 'teams', 'type']) === 'linkMultiple'
|
||||
&&
|
||||
$this->metadata->get(['entityDefs', $scope, 'fields', 'teams', 'type']) === 'linkMultiple' &&
|
||||
$this->metadata->get(['entityDefs', $scope, 'links', 'teams', 'entity']) === 'Team'
|
||||
) {
|
||||
$list[] = (object) ['name' => 'teams'];
|
||||
|
||||
@@ -40,6 +40,9 @@ use Espo\ORM\{
|
||||
Entity,
|
||||
};
|
||||
|
||||
/**
|
||||
* @implements WhereBuilder<CoreEntity>
|
||||
*/
|
||||
class Company implements WhereBuilder
|
||||
{
|
||||
public function build(Entity $entity): ?WhereItem
|
||||
@@ -88,6 +91,9 @@ class Company implements WhereBuilder
|
||||
return $orBuilder->build();
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string[]
|
||||
*/
|
||||
private function getEmailAddressList(CoreEntity $entity): array
|
||||
{
|
||||
if ($entity->get('emailAddressData')) {
|
||||
|
||||
@@ -43,6 +43,9 @@ use Espo\ORM\{
|
||||
Entity,
|
||||
};
|
||||
|
||||
/**
|
||||
* @implements WhereBuilder<CoreEntity>
|
||||
*/
|
||||
class Person implements WhereBuilder
|
||||
{
|
||||
public function build(Entity $entity): ?WhereItem
|
||||
@@ -97,6 +100,9 @@ class Person implements WhereBuilder
|
||||
return $orBuilder->build();
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string[]
|
||||
*/
|
||||
private function getEmailAddressList(CoreEntity $entity): array
|
||||
{
|
||||
if ($entity->get('emailAddressData')) {
|
||||
|
||||
@@ -51,13 +51,13 @@ class AttachmentMultiple implements FieldDuplicator
|
||||
{
|
||||
$valueMap = (object) [];
|
||||
|
||||
/** @var \Espo\ORM\Collection&iterable<Attachment> $attachmentList */
|
||||
/** @var \Espo\ORM\Collection<Attachment> $attachmentList */
|
||||
$attachmentList = $this->entityManager
|
||||
->getRDBRepository($entity->getEntityType())
|
||||
->getRelation($entity, $field)
|
||||
->find();
|
||||
|
||||
if (!count($attachmentList)) {
|
||||
if (is_countable($attachmentList) && !count($attachmentList)) {
|
||||
return $valueMap;
|
||||
}
|
||||
|
||||
|
||||
@@ -48,12 +48,18 @@ use ICal\Event;
|
||||
|
||||
use Throwable;
|
||||
|
||||
/**
|
||||
* @implements Loader<\Espo\Entities\Email>
|
||||
*/
|
||||
class IcsDataLoader implements Loader
|
||||
{
|
||||
private $entityManager;
|
||||
|
||||
private $log;
|
||||
|
||||
/**
|
||||
* @var array<string,string>
|
||||
*/
|
||||
private $entityTypeLinkMap = [
|
||||
'User' => 'users',
|
||||
'Contact' => 'contacts',
|
||||
|
||||
@@ -42,12 +42,18 @@ use Espo\Core\{
|
||||
use Espo\Entities\Email;
|
||||
use Espo\Entities\User;
|
||||
|
||||
/**
|
||||
* @implements Loader<\Espo\Entities\Email>
|
||||
*/
|
||||
class StringDataLoader implements Loader
|
||||
{
|
||||
private $entityManager;
|
||||
|
||||
private $user;
|
||||
|
||||
/**
|
||||
* @var array<string,string>
|
||||
*/
|
||||
private $fromEmailAddressNameCache = [];
|
||||
|
||||
public function __construct(EntityManager $entityManager, User $user)
|
||||
|
||||
@@ -39,6 +39,9 @@ use Espo\Core\{
|
||||
|
||||
use Espo\Entities\User;
|
||||
|
||||
/**
|
||||
* @implements Loader<\Espo\Entities\Email>
|
||||
*/
|
||||
class UserColumnsLoader implements Loader
|
||||
{
|
||||
private $entityManager;
|
||||
|
||||
@@ -38,6 +38,9 @@ use Espo\Core\{
|
||||
|
||||
use Espo\Entities\Note;
|
||||
|
||||
/**
|
||||
* @implements Loader<\Espo\Entities\Note>
|
||||
*/
|
||||
class AttachmentsLoader implements Loader
|
||||
{
|
||||
public function process(Entity $entity, Params $params): void
|
||||
|
||||
@@ -40,6 +40,9 @@ use Espo\Core\{
|
||||
ORM\EntityManager,
|
||||
};
|
||||
|
||||
/**
|
||||
* @implements Loader<\Espo\Entities\Portal>
|
||||
*/
|
||||
class UrlLoader implements Loader
|
||||
{
|
||||
private $entityManager;
|
||||
|
||||
@@ -42,6 +42,9 @@ use Espo\Core\{
|
||||
use DateTime;
|
||||
use Exception;
|
||||
|
||||
/**
|
||||
* @implements Loader<\Espo\Entities\User>
|
||||
*/
|
||||
class LastAccessLoader implements Loader
|
||||
{
|
||||
private $entityManager;
|
||||
|
||||
@@ -38,6 +38,9 @@ class IntType
|
||||
return $this->isNotEmpty($entity, $field);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param mixed $validationValue
|
||||
*/
|
||||
public function checkMax(Entity $entity, string $field, $validationValue): bool
|
||||
{
|
||||
if (!$this->isNotEmpty($entity, $field)) {
|
||||
@@ -51,6 +54,9 @@ class IntType
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param mixed $validationValue
|
||||
*/
|
||||
public function checkMin(Entity $entity, string $field, $validationValue): bool
|
||||
{
|
||||
if (!$this->isNotEmpty($entity, $field)) {
|
||||
|
||||
@@ -76,7 +76,7 @@ class CheckNewVersion implements JobDataLess
|
||||
return;
|
||||
}
|
||||
|
||||
protected function getRunTime()
|
||||
protected function getRunTime(): string
|
||||
{
|
||||
$hour = rand(0, 4);
|
||||
$minute = rand(0, 59);
|
||||
@@ -99,7 +99,7 @@ class CheckNewVersion implements JobDataLess
|
||||
* For backward compatibility.
|
||||
* @deprecated
|
||||
*/
|
||||
protected function getEntityManager()
|
||||
protected function getEntityManager() /** @phpstan-ignore-line */
|
||||
{
|
||||
return $this->entityManager;
|
||||
}
|
||||
|
||||
@@ -53,23 +53,23 @@ use Throwable;
|
||||
|
||||
class Cleanup implements JobDataLess
|
||||
{
|
||||
private $cleanupJobPeriod = '10 days';
|
||||
private string $cleanupJobPeriod = '10 days';
|
||||
|
||||
private $cleanupActionHistoryPeriod = '15 days';
|
||||
private string $cleanupActionHistoryPeriod = '15 days';
|
||||
|
||||
private $cleanupAuthTokenPeriod = '1 month';
|
||||
private string $cleanupAuthTokenPeriod = '1 month';
|
||||
|
||||
private $cleanupAuthLogPeriod = '2 months';
|
||||
private string $cleanupAuthLogPeriod = '2 months';
|
||||
|
||||
private $cleanupNotificationsPeriod = '2 months';
|
||||
private string $cleanupNotificationsPeriod = '2 months';
|
||||
|
||||
private $cleanupAttachmentsPeriod = '15 days';
|
||||
private string $cleanupAttachmentsPeriod = '15 days';
|
||||
|
||||
private $cleanupAttachmentsFromPeriod = '3 months';
|
||||
private string $cleanupAttachmentsFromPeriod = '3 months';
|
||||
|
||||
private $cleanupBackupPeriod = '2 month';
|
||||
private string $cleanupBackupPeriod = '2 month';
|
||||
|
||||
private $cleanupDeletedRecordsPeriod = '3 months';
|
||||
private string $cleanupDeletedRecordsPeriod = '3 months';
|
||||
|
||||
private $config;
|
||||
|
||||
@@ -134,6 +134,7 @@ class Cleanup implements JobDataLess
|
||||
|
||||
foreach ($items as $name => $item) {
|
||||
try {
|
||||
/** @var class-string */
|
||||
$className = $item['className'];
|
||||
|
||||
$injectableFactory->create($className)->process();
|
||||
|
||||
@@ -44,9 +44,9 @@ use Espo\{
|
||||
|
||||
class EmailAddressEquals implements ItemConverter
|
||||
{
|
||||
protected $emailAddressHelper;
|
||||
private $emailAddressHelper;
|
||||
|
||||
protected $randomStringGenerator;
|
||||
private $randomStringGenerator;
|
||||
|
||||
public function __construct(
|
||||
EmailAddressHelper $emailAddressHelper,
|
||||
|
||||
@@ -45,20 +45,11 @@ use Espo\{
|
||||
|
||||
class InFolder implements ItemConverter
|
||||
{
|
||||
/**
|
||||
* @var User
|
||||
*/
|
||||
protected $user;
|
||||
private User $user;
|
||||
|
||||
/**
|
||||
* @var EntityManager
|
||||
*/
|
||||
protected $entityManager;
|
||||
private EntityManager $entityManager;
|
||||
|
||||
/**
|
||||
* @var JoinHelper
|
||||
*/
|
||||
protected $joinHelper;
|
||||
private JoinHelper $joinHelper;
|
||||
|
||||
public function __construct(User $user, EntityManager $entityManager, JoinHelper $joinHelper)
|
||||
{
|
||||
@@ -173,7 +164,7 @@ class InFolder implements ItemConverter
|
||||
{
|
||||
return WhereClause::fromRaw([
|
||||
'status' => 'Draft',
|
||||
'createdById' => $this->user->id,
|
||||
'createdById' => $this->user->getId(),
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -187,11 +178,14 @@ class InFolder implements ItemConverter
|
||||
]);
|
||||
}
|
||||
|
||||
protected function joinEmailUser(QueryBuilder $queryBuilder)
|
||||
protected function joinEmailUser(QueryBuilder $queryBuilder): void
|
||||
{
|
||||
$this->joinHelper->joinEmailUser($queryBuilder, $this->user->id);
|
||||
$this->joinHelper->joinEmailUser($queryBuilder, $this->user->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string[]
|
||||
*/
|
||||
protected function getEmailAddressIdList(): array
|
||||
{
|
||||
$emailAddressList = $this->entityManager
|
||||
|
||||
@@ -44,9 +44,9 @@ use Espo\{
|
||||
|
||||
class IsImportantIsFalse implements ItemConverter
|
||||
{
|
||||
protected $user;
|
||||
private $user;
|
||||
|
||||
protected $joinHelper;
|
||||
private $joinHelper;
|
||||
|
||||
public function __construct(User $user, JoinHelper $joinHelper)
|
||||
{
|
||||
|
||||
@@ -44,9 +44,9 @@ use Espo\{
|
||||
|
||||
class IsImportantIsTrue implements ItemConverter
|
||||
{
|
||||
protected $user;
|
||||
private $user;
|
||||
|
||||
protected $joinHelper;
|
||||
private $joinHelper;
|
||||
|
||||
public function __construct(User $user, JoinHelper $joinHelper)
|
||||
{
|
||||
|
||||
@@ -44,9 +44,9 @@ use Espo\{
|
||||
|
||||
class IsNotReadIsFalse implements ItemConverter
|
||||
{
|
||||
protected $user;
|
||||
private $user;
|
||||
|
||||
protected $joinHelper;
|
||||
private $joinHelper;
|
||||
|
||||
public function __construct(User $user, JoinHelper $joinHelper)
|
||||
{
|
||||
|
||||
@@ -44,9 +44,9 @@ use Espo\{
|
||||
|
||||
class IsNotReadIsTrue implements ItemConverter
|
||||
{
|
||||
protected $user;
|
||||
private $user;
|
||||
|
||||
protected $joinHelper;
|
||||
private $joinHelper;
|
||||
|
||||
public function __construct(User $user, JoinHelper $joinHelper)
|
||||
{
|
||||
|
||||
@@ -44,9 +44,9 @@ use Espo\{
|
||||
|
||||
class ToEquals implements ItemConverter
|
||||
{
|
||||
protected $emailAddressHelper;
|
||||
private $emailAddressHelper;
|
||||
|
||||
protected $randomStringGenerator;
|
||||
private $randomStringGenerator;
|
||||
|
||||
public function __construct(
|
||||
EmailAddressHelper $emailAddressHelper,
|
||||
|
||||
Reference in New Issue
Block a user