Попробовали сделать по инструкции, но не удалось его корректно подключить, конструкция
"class ExtraServicesEnumExtra extends \Bitrix\Sale\Delivery\ExtraServices\Enum" в классе вызывает ошибку
Class 'Bitrix\Sale\Delivery\ExtraServices\Enum' not found in /var/www/sibcontact/data/www/sibcontact.iconsystems.ru/local/php_interface/include/classes/ExtraServicesEnumExtr
a.php on line 11
Класс расположен в
/local/php_interface/include/classes/ExtraServicesEnumExtra.php
чать кода:
Код |
---|
namespace Bitrix\Sale\Delivery\ExtraServices\ExtraServicesEnumExtra;
use Bitrix\Main\SystemException;
use Bitrix\Main\Localization\Loc;
/**
* Class ExtraServicesEnumExtra
*/
class ExtraServicesEnumExtra extends \Bitrix\Sale\Delivery\ExtraServices\Enum
{
...
|
В /local/php_interface/init.php указываем следующее:
Код |
---|
AddEventHandler('sale', 'onSaleDeliveryExtraServicesClassNamesBuildList', 'customExtraServicesFunc');
use Bitrix\Sale\Delivery\ExtraServices;
CModule::includeModule("sale");
include_once "include/classes/ExtraServicesEnumExtra.php";
function customExtraServicesFunc(Main\Event $event)
{
return new Main\EventResult(
Main\EventResult::SUCCESS,
array(
'ExtraServicesEnumExtra' => '/local/php_interface/include/classes/ExtraServicesEnumExtra.php',
)
);
}
|
Если перенести в файл класса, то возникает другая ошибка:
Class 'Bitrix\Sale\Delivery\ExtraServices\ExtraServicesEnumExtra\C
Module' not found (0)
Где корректнее использовать использование namespace?