Neur0toxine
5f69051859
* New module structure (refactoring) * Simple serializer and deserializer with models, new architecture * Move logic to strategies * Partial api client facade implementation (full implementation is not necessary for now) * Loyalty feature installer * Sms verification order (#167) * Make updater self-sufficient * Fix for order submit & fix for incorrect component rendering in the constructor * Fix for loyalty personal area error handling * Fix for cart component identity * Fix for softlock when customer cannot be registered in loyalty Co-authored-by: Сергей Чазов <45812598+Chazovs@users.noreply.github.com> Co-authored-by: Sergey Chazov <oitv18@gmail.com>
54 lines
1.6 KiB
PHP
54 lines
1.6 KiB
PHP
<?php
|
|
|
|
use Bitrix\Main\Context;
|
|
use Bitrix\Main\Loader;
|
|
use Intaro\RetailCrm\Component\ServiceLocator;
|
|
use Intaro\RetailCrm\Service\CookieService;
|
|
use Intaro\RetailCrm\Service\OrderLoyaltyDataService;
|
|
use Intaro\RetailCrm\Service\LoyaltyService;
|
|
use Intaro\RetailCrm\Service\LoyaltyAccountService;
|
|
use Intaro\RetailCrm\Service\CustomerService;
|
|
use Intaro\RetailCrm\Vendor\Doctrine\Common\Annotations\AnnotationReader;
|
|
use Intaro\RetailCrm\Vendor\Doctrine\Common\Annotations\AnnotationRegistry;
|
|
use \Intaro\RetailCrm\Component\Builder\Api\CustomerBuilder;
|
|
|
|
require_once __DIR__ . '/RetailcrmClasspathBuilder.php';
|
|
|
|
$retailcrmModuleId = 'intaro.retailcrm';
|
|
$server = Context::getCurrent()->getServer()->getDocumentRoot();
|
|
$version = COption::GetOptionString('intaro.retailcrm', 'api_version');
|
|
|
|
$builder = new RetailcrmClasspathBuilder();
|
|
$builder->setDisableNamespaces(true)
|
|
->setDocumentRoot($server)
|
|
->setModuleId($retailcrmModuleId)
|
|
->setPath('classes')
|
|
->setVersion($version)
|
|
->build();
|
|
|
|
Loader::registerAutoLoadClasses('intaro.retailcrm', $builder->getResult());
|
|
AnnotationRegistry::registerLoader('class_exists');
|
|
|
|
ServiceLocator::registerServices([
|
|
\Intaro\RetailCrm\Service\Utils::class,
|
|
Logger::class,
|
|
AnnotationReader::class,
|
|
CookieService::class,
|
|
LoyaltyAccountService::class,
|
|
LoyaltyService::class,
|
|
CustomerService::class,
|
|
OrderLoyaltyDataService::class,
|
|
CustomerBuilder::class
|
|
]);
|
|
|
|
$arJsConfig = [
|
|
'intaro_countdown' => [
|
|
'js' => '/bitrix/js/intaro/sms.js',
|
|
'rel' => [],
|
|
],
|
|
];
|
|
|
|
foreach ($arJsConfig as $ext => $arExt) {
|
|
CJSCore::RegisterExt($ext, $arExt);
|
|
}
|