In-Portal Issue Tracker - In-Portal CMS
Viewing Issue Advanced Details
18 [In-Portal CMS] Data Management feature request always 2009-05-18 11:07 2010-01-12 11:36
alex  
 
normal  
closed  
fixed  
 
none 5.0.2  
0
0000018: Redo Implementation of "OnAfterCopyToLive" methods
Redo Implementation of "OnAfterCopyToLive" methods
[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.
Issue History
2010-01-12 11:36 alex Note Added: 0001410
2010-01-12 11:36 alex Status active => closed
2010-01-12 11:36 alex Resolution open => fixed
2010-01-12 11:36 alex Fixed in Version => 5.0.2
2009-09-29 09:04 alex Patch Status => Not Used
2009-09-29 09:04 alex Reporter administrator => alex
2009-05-18 11:07 administrator New Issue

Notes
(0001410)
alex   
2010-01-12 11:36   
This is already implemented.