Вопрос следующий: [B]должны ли эти функции возвращать все поля $arFields или только измененнные?[/B]
Когда подключил CALLBACK_FUNC, которая возвращает только
[CODE]
$arFields = array(
'PRICE'=>9999,
'CAN_BUY'=>'Y'
);
[/CODE]
CSaleBasket::Add стала возвращать FALSE, в связи с чем и встал такой вопрос.
Далее размышления вслух:
В документации этот момент не освещен и если действительно необходимы все поля, то по моему скромному мнению это существенно узкое место: по-любому мы в реализации корзины используем инфоблоки, получаем свойства и т.п. и эта функция выполняется каждый раз при чтении корзины для каждого элемента! Куда логичнее было бы передавать указатель &$arFields и просто менять необходимые поля.
Когда подключил CALLBACK_FUNC, которая возвращает только
[CODE]
$arFields = array(
'PRICE'=>9999,
'CAN_BUY'=>'Y'
);
[/CODE]
CSaleBasket::Add стала возвращать FALSE, в связи с чем и встал такой вопрос.
Далее размышления вслух:
В документации этот момент не освещен и если действительно необходимы все поля, то по моему скромному мнению это существенно узкое место: по-любому мы в реализации корзины используем инфоблоки, получаем свойства и т.п. и эта функция выполняется каждый раз при чтении корзины для каждого элемента! Куда логичнее было бы передавать указатель &$arFields и просто менять необходимые поля.