Здравствуйте.
Возможно кто-то сталкивался с такой проблемой - пытаюсь сделать вновь добавленный каталог торговым, но никак не выходит.
Сами свойства добавляемого ИБ менять при создании получается (OnBeforeIBlockAdd), но там не передается информация о том, является ли ИБ торговым каталогом - для этого нашел функцию CCatalog::Add, но она почему-то не отрабатывает (возвращает true, но если зайти в созданный ИБ, то он не будет помечен как торговый каталог).
Возможно кто-то сталкивался с такой проблемой - пытаюсь сделать вновь добавленный каталог торговым, но никак не выходит.
Сами свойства добавляемого ИБ менять при создании получается (OnBeforeIBlockAdd), но там не передается информация о том, является ли ИБ торговым каталогом - для этого нашел функцию CCatalog::Add, но она почему-то не отрабатывает (возвращает true, но если зайти в созданный ИБ, то он не будет помечен как торговый каталог).
| Код |
|---|
<?
AddEventHandler("iblock", "OnBeforeIBlockAdd", Array("MyClass", "OnBeforeIBlockAddHandler"));
AddEventHandler("iblock", "OnAfterIBlockAdd", Array("MyClass", "OnAfterIBlockAddHandler"));
AddEventHandler("iblock", "OnBeforeIBlockElementAdd", Array("MyClass", "OnBeforeIBlockElementAddHandler"));
class MyClass
{
function OnAfterIBlockAddHandler(&$arFields)
{
if($arFields["ID"]>0)
{
/* помечаем ИБ как торгоывй каталог */
$res_ = CCatalog::Add( array("IBLOCK_ID"=>$arFields["ID"],"YANDEX_EXPORT"=>"Y","SUBSCRIPTION"=>"N") );
if(!$res_)
{
global $APPLICATION;
$APPLICATION->throwException("Не удалось выполнить CCatalog::Add");
return false;
}
}
}
... |
Не бойтесь делать того что не умеете. Ковчег построил любитель...Профессионалы построили Титаник