Index: lams_common/src/java/org/lamsfoundation/lams/dbupdates/patch20200116.sql =================================================================== diff -u --- lams_common/src/java/org/lamsfoundation/lams/dbupdates/patch20200116.sql (revision 0) +++ lams_common/src/java/org/lamsfoundation/lams/dbupdates/patch20200116.sql (revision 7eef84aca4b6e28ca274dbf4a91631ca484c973e) @@ -0,0 +1,12 @@ +SET AUTOCOMMIT = 0; +SET FOREIGN_KEY_CHECKS = 0; + +-- LDEV-4846 Fix missin QB question content folder IDs + +UPDATE lams_qb_question SET content_folder_id = '01234567-89ab-cdef-0123-4567890abcde' WHERE content_folder_id IS NULL; + +ALTER TABLE lams_qb_question MODIFY COLUMN content_folder_id char(36) NOT NULL; + +COMMIT; +SET AUTOCOMMIT = 1; +SET FOREIGN_KEY_CHECKS = 1; \ No newline at end of file Index: lams_common/src/java/org/lamsfoundation/lams/qb/service/QbService.java =================================================================== diff -u -r9012873415698350686bf05ac1ddb1ee5b8fe154 -r7eef84aca4b6e28ca274dbf4a91631ca484c973e --- lams_common/src/java/org/lamsfoundation/lams/qb/service/QbService.java (.../QbService.java) (revision 9012873415698350686bf05ac1ddb1ee5b8fe154) +++ lams_common/src/java/org/lamsfoundation/lams/qb/service/QbService.java (.../QbService.java) (revision 7eef84aca4b6e28ca274dbf4a91631ca484c973e) @@ -44,6 +44,7 @@ import org.lamsfoundation.lams.usermanagement.service.IUserManagementService; import org.lamsfoundation.lams.util.Configuration; import org.lamsfoundation.lams.util.ConfigurationKeys; +import org.lamsfoundation.lams.util.FileUtil; import org.lamsfoundation.lams.util.WebUtil; import org.lamsfoundation.lams.web.session.SessionManager; import org.lamsfoundation.lams.web.util.AttributeNames; @@ -600,6 +601,9 @@ if (qbQuestion.getVersion() == null) { qbQuestion.setVersion(1); } + if (qbQuestion.getContentFolderId() == null) { + qbQuestion.setContentFolderId(FileUtil.generateUniqueContentFolderID()); + } Collection qbOptions = qbQuestion.getQbOptions() == null ? null : new ArrayList<>(qbQuestion.getQbOptions());