19 private const ON_GET_PROVIDER_EVENT =
'onGetContractorsProvider';
20 private const ON_GET_CONVERTER_EVENT =
'onGetContractorsConverter';
28 $converter = self::getConverter();
34 static $isMigrating =
false;
35 if (!$converter::isMigrated())
40 $converter::runMigration();
46 return self::getProvider($providerName);
49 public static function isActiveProviderExists(): bool
51 $event =
new Event(
'catalog', self::ON_GET_PROVIDER_EVENT);
54 $resultList =
$event->getResults();
56 if (is_array($resultList))
59 foreach ($resultList as $eventResult)
61 $providers = $eventResult->getParameters();
94 $converter = self::getConverter();
97 && !$converter::isMigrated()
100 $converter::showMigrationProgress();
103 return ob_get_clean();
110 private static function getProvider(
string $providerName): ?
IProvider
112 $event =
new Event(
'catalog', self::ON_GET_PROVIDER_EVENT);
115 $resultList =
$event->getResults();
117 if (is_array($resultList))
120 foreach ($resultList as $eventResult)
122 $providers = $eventResult->getParameters();
136 private static function getConverter(): ?IConverter
138 $event =
new Event(
'catalog', self::ON_GET_CONVERTER_EVENT);
141 $resultList =
$event->getResults();
143 if (is_array($resultList))
146 foreach ($resultList as $eventResult)
148 $provider = $eventResult->getParameters();