Index: lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/ImageGalleryServiceImpl.java =================================================================== diff -u -r40eb54374e84591563d8b6a679ac719dbc85c8f7 -rd294cd7ebfaf0e8eda7511917f854aaf2a0d3ba9 --- lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/ImageGalleryServiceImpl.java (.../ImageGalleryServiceImpl.java) (revision 40eb54374e84591563d8b6a679ac719dbc85c8f7) +++ lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/ImageGalleryServiceImpl.java (.../ImageGalleryServiceImpl.java) (revision d294cd7ebfaf0e8eda7511917f854aaf2a0d3ba9) @@ -863,17 +863,22 @@ } ImageGallery toContent = ImageGallery.newInstance(imageGallery, toContentId); - imageGalleryDao.saveObject(toContent); - - // save imageGallery items as well + // save imageGallery items first Set items = toContent.getImageGalleryItems(); if (items != null) { Iterator iter = items.iterator(); while (iter.hasNext()) { ImageGalleryItem item = (ImageGalleryItem) iter.next(); - // createRootTopic(toContent.getUid(),null,msg); + if (item.isCreateByAuthor()) { + imageGalleryUserDao.saveObject(item.getCreateBy()); + imageGalleryItemDao.saveObject(item); + } else { + iter.remove(); + } } } + + imageGalleryDao.saveObject(toContent); } public String getToolContentTitle(Long toolContentId) { Index: lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/service/KalturaService.java =================================================================== diff -u -r40eb54374e84591563d8b6a679ac719dbc85c8f7 -rd294cd7ebfaf0e8eda7511917f854aaf2a0d3ba9 --- lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/service/KalturaService.java (.../KalturaService.java) (revision 40eb54374e84591563d8b6a679ac719dbc85c8f7) +++ lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/service/KalturaService.java (.../KalturaService.java) (revision d294cd7ebfaf0e8eda7511917f854aaf2a0d3ba9) @@ -27,6 +27,7 @@ import java.sql.Timestamp; import java.util.Date; import java.util.Hashtable; +import java.util.Iterator; import java.util.LinkedList; import java.util.List; import java.util.Set; @@ -197,6 +198,20 @@ fromContent = getDefaultContent(); } Kaltura toContent = Kaltura.newInstance(fromContent, toContentId); + + Set items = toContent.getKalturaItems(); + if (items != null) { + Iterator iter = items.iterator(); + while (iter.hasNext()) { + KalturaItem item = (KalturaItem) iter.next(); + if (item.isCreateByAuthor()) { + kalturaUserDao.saveOrUpdate(item.getCreatedBy()); + kalturaItemDao.insert(item); + } else { + iter.remove(); + } + } + } kalturaDao.saveOrUpdate(toContent); }