Index: lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/AssessmentConstants.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/AssessmentConstants.java,v diff -u -r1.25 -r1.26 --- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/AssessmentConstants.java 9 Jul 2014 23:22:41 -0000 1.25 +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/AssessmentConstants.java 10 Jul 2014 19:09:57 -0000 1.26 @@ -23,7 +23,6 @@ /* $Id$ */ package org.lamsfoundation.lams.tool.assessment; -import org.lamsfoundation.lams.tool.assessment.dto.RequiredQuestionsDTO; public class AssessmentConstants { public static final String TOOL_SIGNATURE = "laasse10"; @@ -202,7 +201,7 @@ public static final String ATTR_IS_USER_FAILED = "isUserFailed"; - public static final String ATTR_REQUIRED_QUESTIONS_DTO = "requiredQuestionsDTO"; + public static final String ATTR_IS_REQUIRED_ANSWER_MISSED = "isRequiredAnswerMissed"; public static final String ATTR_FINISHED_LOCK = "finishedLock"; Index: lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/dbupdates/patch20140707.sql =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/dbupdates/patch20140707.sql,v diff -u -r1.2 -r1.3 --- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/dbupdates/patch20140707.sql 9 Jul 2014 23:22:41 -0000 1.2 +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/dbupdates/patch20140707.sql 10 Jul 2014 19:09:57 -0000 1.3 @@ -4,7 +4,7 @@ ----------------------Put all sql statements below here------------------------- -- LDEV-3265 Ability to set questions required to be answered -ALTER TABLE tl_laasse10_assessment_question ADD COLUMN answer_required TINYINT(1) NOT NULL DEFAULT 1; +ALTER TABLE tl_laasse10_assessment_question ADD COLUMN answer_required TINYINT(1) NOT NULL DEFAULT 0; -- LDEV-3263 Add support for renaming field names on sequence import UPDATE lams_tool SET tool_version='20140707' WHERE tool_signature='laasse10'; Fisheye: Tag 1.2 refers to a dead (removed) revision in file `lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/dto/RequiredQuestionsDTO.java'. Fisheye: No comparison available. Pass `N' to diff? Index: lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/AuthoringAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/AuthoringAction.java,v diff -u -r1.34 -r1.35 --- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/AuthoringAction.java 9 Jul 2014 23:22:41 -0000 1.34 +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/AuthoringAction.java 10 Jul 2014 19:09:57 -0000 1.35 @@ -465,7 +465,7 @@ questionForm.setContentFolderID(contentFolderID); questionForm.setDefaultGrade("1"); questionForm.setPenaltyFactor("0"); - questionForm.setAnswerRequired(true); + questionForm.setAnswerRequired(false); List optionList = new ArrayList(); for (int i = 0; i < AssessmentConstants.INITIAL_OPTIONS_NUMBER; i++) { @@ -916,7 +916,7 @@ question.setFeedback(assessmentQuestion.getGeneralFeedback()); question.setAnswers(answers); - questions.add(assessmentQuestion.getSequenceId() - 1, question); + questions.add(question); } String title = request.getParameter("title"); Index: lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/LearningAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/LearningAction.java,v diff -u -r1.40 -r1.41 --- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/LearningAction.java 9 Jul 2014 23:22:41 -0000 1.40 +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/LearningAction.java 10 Jul 2014 19:09:57 -0000 1.41 @@ -54,13 +54,11 @@ import org.apache.struts.action.ActionMapping; import org.apache.tomcat.util.json.JSONException; import org.apache.tomcat.util.json.JSONObject; -import org.lamsfoundation.lams.events.IEventNotificationService; import org.lamsfoundation.lams.learning.web.bean.ActivityPositionDTO; import org.lamsfoundation.lams.learning.web.util.LearningWebUtil; import org.lamsfoundation.lams.notebook.model.NotebookEntry; import org.lamsfoundation.lams.tool.ToolAccessMode; import org.lamsfoundation.lams.tool.assessment.AssessmentConstants; -import org.lamsfoundation.lams.tool.assessment.dto.RequiredQuestionsDTO; import org.lamsfoundation.lams.tool.assessment.model.Assessment; import org.lamsfoundation.lams.tool.assessment.model.AssessmentOptionAnswer; import org.lamsfoundation.lams.tool.assessment.model.AssessmentOverallFeedback; @@ -75,7 +73,6 @@ import org.lamsfoundation.lams.tool.assessment.service.IAssessmentService; import org.lamsfoundation.lams.tool.assessment.util.SequencableComparator; import org.lamsfoundation.lams.tool.assessment.web.form.ReflectionForm; -import org.lamsfoundation.lams.usermanagement.User; import org.lamsfoundation.lams.usermanagement.dto.UserDTO; import org.lamsfoundation.lams.util.DateUtil; import org.lamsfoundation.lams.util.WebUtil; @@ -436,11 +433,11 @@ storeUserAnswersIntoSessionMap(request); //check all required questions got answered - RequiredQuestionsDTO requiredQuestionsDTO = checkAllRequiredQuestionsAnswered(sessionMap); - //if not then forward to nextPage() - if (requiredQuestionsDTO.isRequiredAnswerMissed()) { - request.setAttribute(AssessmentConstants.ATTR_PAGE_NUMBER, requiredQuestionsDTO.getPageNumber()); - request.setAttribute(AssessmentConstants.ATTR_REQUIRED_QUESTIONS_DTO, requiredQuestionsDTO); + int pageNumberWithUnasweredQuestions = checkAllRequiredQuestionsAnswered(sessionMap); + //if some were not then forward to nextPage() + if (pageNumberWithUnasweredQuestions != 0) { + request.setAttribute(AssessmentConstants.ATTR_PAGE_NUMBER, pageNumberWithUnasweredQuestions); + request.setAttribute(AssessmentConstants.ATTR_IS_REQUIRED_ANSWER_MISSED, true); return nextPage(mapping, form, request, response); } @@ -727,16 +724,17 @@ } /** - * Get back user answers from request and store it into sessionMap. + * Checks whether all questions set as requiring an answer was answered. * - * @param request + * @param sessionMap + * @return 0 if all required questions were answered, or number of a page that contains unanswered question */ - private RequiredQuestionsDTO checkAllRequiredQuestionsAnswered(SessionMap sessionMap){ + private int checkAllRequiredQuestionsAnswered(SessionMap sessionMap){ ArrayList> pagedQuestions = (ArrayList>) sessionMap.get(AssessmentConstants.ATTR_PAGED_QUESTIONS); //array of missing required questions - List missingRequiredQuestions = new ArrayList(); + boolean isAllQuestionsAnswered = true; //iterate through all pages to find first that contains missing required questions int pageCount; @@ -771,26 +769,24 @@ isAnswered = true; } - // required question was not answered, so store its sequence id + // check all questions were answered if (!isAnswered) { - missingRequiredQuestions.add(questionCount); + isAllQuestionsAnswered = false; + break; } } questionCount++; } - if (!missingRequiredQuestions.isEmpty()) { - break; + //if found un-answered question, stop here + if (!isAllQuestionsAnswered) { + return pageCount + 1; } } - RequiredQuestionsDTO requiredQuestionsDTO = new RequiredQuestionsDTO(); - requiredQuestionsDTO.setRequiredAnswerMissed(!missingRequiredQuestions.isEmpty()); - requiredQuestionsDTO.setPageNumber(pageCount + 1); - requiredQuestionsDTO.setMissingRequiredQuestions(missingRequiredQuestions); - return requiredQuestionsDTO; + return 0; } /** Index: lams_tool_assessment/web/includes/css/assessment.css =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/web/includes/css/assessment.css,v diff -u -r1.3 -r1.4 --- lams_tool_assessment/web/includes/css/assessment.css 9 Jul 2014 23:22:41 -0000 1.3 +++ lams_tool_assessment/web/includes/css/assessment.css 10 Jul 2014 19:09:57 -0000 1.4 @@ -1,3 +1,9 @@ +.field-name input[type=checkbox] { + vertical-align: bottom; + margin-right: 4px; + border: none; +} + table.forum th { font-size: inherit; border-left: none; Index: lams_tool_assessment/web/pages/authoring/parts/addessay.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/web/pages/authoring/parts/addessay.jsp,v diff -u -r1.17 -r1.18 --- lams_tool_assessment/web/pages/authoring/parts/addessay.jsp 9 Jul 2014 23:22:41 -0000 1.17 +++ lams_tool_assessment/web/pages/authoring/parts/addessay.jsp 10 Jul 2014 19:09:57 -0000 1.18 @@ -104,14 +104,14 @@
+
-
+
-
Index: lams_tool_assessment/web/pages/authoring/parts/addmatchingpairs.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/web/pages/authoring/parts/addmatchingpairs.jsp,v diff -u -r1.17 -r1.18 --- lams_tool_assessment/web/pages/authoring/parts/addmatchingpairs.jsp 9 Jul 2014 23:22:41 -0000 1.17 +++ lams_tool_assessment/web/pages/authoring/parts/addmatchingpairs.jsp 10 Jul 2014 19:09:57 -0000 1.18 @@ -141,9 +141,9 @@
+
-
@@ -153,9 +153,9 @@
+
-

Index: lams_tool_assessment/web/pages/authoring/parts/addmultiplechoice.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/web/pages/authoring/parts/addmultiplechoice.jsp,v diff -u -r1.18 -r1.19 --- lams_tool_assessment/web/pages/authoring/parts/addmultiplechoice.jsp 9 Jul 2014 23:22:41 -0000 1.18 +++ lams_tool_assessment/web/pages/authoring/parts/addmultiplechoice.jsp 10 Jul 2014 19:09:57 -0000 1.19 @@ -159,9 +159,9 @@
+
-
@@ -179,9 +179,9 @@
+
-

Index: lams_tool_assessment/web/pages/authoring/parts/addnumerical.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/web/pages/authoring/parts/addnumerical.jsp,v diff -u -r1.16 -r1.17 --- lams_tool_assessment/web/pages/authoring/parts/addnumerical.jsp 9 Jul 2014 23:22:41 -0000 1.16 +++ lams_tool_assessment/web/pages/authoring/parts/addnumerical.jsp 10 Jul 2014 19:09:57 -0000 1.17 @@ -205,9 +205,9 @@
+
-
Index: lams_tool_assessment/web/pages/authoring/parts/addordering.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/web/pages/authoring/parts/addordering.jsp,v diff -u -r1.15 -r1.16 --- lams_tool_assessment/web/pages/authoring/parts/addordering.jsp 9 Jul 2014 23:22:41 -0000 1.15 +++ lams_tool_assessment/web/pages/authoring/parts/addordering.jsp 10 Jul 2014 19:09:57 -0000 1.16 @@ -145,9 +145,9 @@
+
-
Index: lams_tool_assessment/web/pages/authoring/parts/addshortanswer.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/web/pages/authoring/parts/addshortanswer.jsp,v diff -u -r1.16 -r1.17 --- lams_tool_assessment/web/pages/authoring/parts/addshortanswer.jsp 9 Jul 2014 23:22:41 -0000 1.16 +++ lams_tool_assessment/web/pages/authoring/parts/addshortanswer.jsp 10 Jul 2014 19:09:57 -0000 1.17 @@ -152,9 +152,9 @@
+
-
Index: lams_tool_assessment/web/pages/authoring/parts/addtruefalse.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/web/pages/authoring/parts/addtruefalse.jsp,v diff -u -r1.13 -r1.14 --- lams_tool_assessment/web/pages/authoring/parts/addtruefalse.jsp 9 Jul 2014 23:22:41 -0000 1.13 +++ lams_tool_assessment/web/pages/authoring/parts/addtruefalse.jsp 10 Jul 2014 19:09:57 -0000 1.14 @@ -122,9 +122,9 @@
+
-
Index: lams_tool_assessment/web/pages/learning/learning.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/web/pages/learning/learning.jsp,v diff -u -r1.34 -r1.35 --- lams_tool_assessment/web/pages/learning/learning.jsp 9 Jul 2014 23:22:41 -0000 1.34 +++ lams_tool_assessment/web/pages/learning/learning.jsp 10 Jul 2014 19:09:57 -0000 1.35 @@ -130,7 +130,7 @@ //check if we came back due to missing required question's answer $(document).ready(function(){ - if (${requiredQuestionsDTO != null}) { + if (${isRequiredAnswerMissed == true}) { validateAnswers(); } });