Index: lams_central/src/java/org/lamsfoundation/lams/web/qb/EditQbQuestionController.java =================================================================== diff -u -rb688f852f5068e201101657aee0f735dd5998647 -r3cdf562682c8dda602c4583956be0b13bdaf98c4 --- lams_central/src/java/org/lamsfoundation/lams/web/qb/EditQbQuestionController.java (.../EditQbQuestionController.java) (revision b688f852f5068e201101657aee0f735dd5998647) +++ lams_central/src/java/org/lamsfoundation/lams/web/qb/EditQbQuestionController.java (.../EditQbQuestionController.java) (revision 3cdf562682c8dda602c4583956be0b13bdaf98c4) @@ -233,7 +233,7 @@ // new version of the old question gets created qbQuestion = qbQuestion.clone(); qbQuestion.clearID(); - qbQuestion.setVersion(qbService.getMaxQuestionVersion(qbQuestion.getQuestionId())); + qbQuestion.setVersion(qbService.getMaxQuestionVersion(qbQuestion.getQuestionId()) + 1); qbQuestion.setCreateDate(new Date()); } break; Index: lams_common/src/java/org/lamsfoundation/lams/qb/dao/hibernate/QbDAO.java =================================================================== diff -u -r8eefd9a2f57ce5b05eb75908e36bb042c5fe7fce -r3cdf562682c8dda602c4583956be0b13bdaf98c4 --- lams_common/src/java/org/lamsfoundation/lams/qb/dao/hibernate/QbDAO.java (.../QbDAO.java) (revision 8eefd9a2f57ce5b05eb75908e36bb042c5fe7fce) +++ lams_common/src/java/org/lamsfoundation/lams/qb/dao/hibernate/QbDAO.java (.../QbDAO.java) (revision 3cdf562682c8dda602c4583956be0b13bdaf98c4) @@ -124,15 +124,15 @@ public int getMaxQuestionId() { Object result = this.getSession().createQuery(FIND_MAX_QUESTION_ID).uniqueResult(); Integer max = (Integer) result; - return max == null ? 1 : max + 1; + return max == null ? 1 : max; } @Override public int getMaxQuestionVersion(Integer qbQuestionId) { Object result = this.getSession().createQuery(FIND_MAX_VERSION).setParameter("questionId", qbQuestionId) .uniqueResult(); Integer max = (Integer) result; - return max == null ? 1 : max + 1; + return max == null ? 1 : max; } @Override Index: lams_common/src/java/org/lamsfoundation/lams/qb/service/QbService.java =================================================================== diff -u -r2e1b7f6b445f4daa56b258b3d0c27cadca081b8e -r3cdf562682c8dda602c4583956be0b13bdaf98c4 --- lams_common/src/java/org/lamsfoundation/lams/qb/service/QbService.java (.../QbService.java) (revision 2e1b7f6b445f4daa56b258b3d0c27cadca081b8e) +++ lams_common/src/java/org/lamsfoundation/lams/qb/service/QbService.java (.../QbService.java) (revision 3cdf562682c8dda602c4583956be0b13bdaf98c4) @@ -431,7 +431,7 @@ List questions = getQuestionsByQuestionId(qbQuestionId); QbQuestion question = questions.get(0); QbQuestion newQuestion = question.clone(); - addQbQuestionId = getMaxQuestionId(); + addQbQuestionId = getMaxQuestionId() + 1; newQuestion.setQuestionId(addQbQuestionId); newQuestion.setVersion(1); newQuestion.setCreateDate(new Date()); Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/McService.java =================================================================== diff -u -r6aa0f9c7abedde6c4c3cc7fe2b0b19176df284ed -r3cdf562682c8dda602c4583956be0b13bdaf98c4 --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/McService.java (.../McService.java) (revision 6aa0f9c7abedde6c4c3cc7fe2b0b19176df284ed) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/McService.java (.../McService.java) (revision 3cdf562682c8dda602c4583956be0b13bdaf98c4) @@ -283,7 +283,7 @@ // if it does not exist, create a new one qbQuestion = new QbQuestion(); qbQuestion.setType(QbQuestion.TYPE_MULTIPLE_CHOICE); - qbQuestion.setQuestionId(qbService.getMaxQuestionId()); + qbQuestion.setQuestionId(qbService.getMaxQuestionId() + 1); } // make a clone to check if data changed QbQuestion qbQuestionClone = qbQuestion.clone(); @@ -308,14 +308,14 @@ case IQbService.QUESTION_MODIFIED_VERSION_BUMP: // new version of the old questionDescription gets created qbQuestion = qbQuestionClone; - qbQuestion.setVersion(qbService.getMaxQuestionVersion(qbQuestion.getQuestionId())); + qbQuestion.setVersion(qbService.getMaxQuestionVersion(qbQuestion.getQuestionId()) + 1); qbQuestion.setCreateDate(new Date()); break; case IQbService.QUESTION_MODIFIED_ID_BUMP: // new questionDescription gets created qbQuestion = qbQuestionClone; qbQuestion.setVersion(1); - qbQuestion.setQuestionId(qbService.getMaxQuestionId()); + qbQuestion.setQuestionId(qbService.getMaxQuestionId() + 1); qbQuestion.setCreateDate(new Date()); break; } Index: lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/controller/AuthoringController.java =================================================================== diff -u -re7f6df71275535cf4af43f3ff4479a8c58e0be50 -r3cdf562682c8dda602c4583956be0b13bdaf98c4 --- lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/controller/AuthoringController.java (.../AuthoringController.java) (revision e7f6df71275535cf4af43f3ff4479a8c58e0be50) +++ lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/controller/AuthoringController.java (.../AuthoringController.java) (revision 3cdf562682c8dda602c4583956be0b13bdaf98c4) @@ -286,7 +286,7 @@ QbQuestion qbQuestion = item.getQbQuestion().clone(); item.setQbQuestion(qbQuestion); qbQuestion.clearID(); - qbQuestion.setVersion(qbService.getMaxQuestionVersion(qbQuestion.getQuestionId())); + qbQuestion.setVersion(qbService.getMaxQuestionVersion(qbQuestion.getQuestionId()) + 1); qbQuestion.setCreateDate(new Date()); } break; @@ -296,7 +296,7 @@ item.setQbQuestion(qbQuestion); qbQuestion.clearID(); qbQuestion.setVersion(1); - qbQuestion.setQuestionId(maxQuestionId++); + qbQuestion.setQuestionId(++maxQuestionId); qbQuestion.setCreateDate(new Date()); } break;