[by Alex O.]
Изменение довольно массивные, чтобы их можно было быстро протестировать. Пока работал с begonija_asu вроде всё нашёл что было не так. В самом begonija_asu это уже давно работает. Надо просто взять этот файл, вставить его в RC и протестировать на всяких запарочных местах, типа shipping brackets и stylesheets, т.к. такой замороченности по вложенности префиксов ещё никто не превзошел.
[by Sergey Grib]
Посвящается нашей извечной чёрной дыре - получению id после копирования данных в live-таблицу в случае массового копирования (если нет детей). В данный момент не существует ни одного адекватного метода выполнения этой задачи.
Предложение очень простое и состоит в следующем: применять массовое копирование только для тех items, которые не новые, то есть во временной таблице id > 0. Остальные (с id<=0) копируем по одному тем же методом, как и главные items в случае, если у них есть дети.
Также, в случае массового копирования, следует передавать список ids в OnAfterCopyToLive через тот же параметр, что и в случае с копированием по одному.
Таким образом, в OnAfterCopyToLive всегда будут попадать правильные ids, доступные для дальнейшей обработки. Для новых (или у которых есть дети) items OnAfterCopyToLive будет вызываться каждый раз с переданной одной id, для остальных - один раз с переданным списком ids.