Index: lams_tool_assessment/conf/language/lams/ApplicationResources_en_AU.properties =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/conf/language/lams/ApplicationResources_en_AU.properties,v diff -u -r1.65 -r1.66 --- lams_tool_assessment/conf/language/lams/ApplicationResources_en_AU.properties 30 Jul 2015 16:47:25 -0000 1.65 +++ lams_tool_assessment/conf/language/lams/ApplicationResources_en_AU.properties 31 Jul 2015 08:01:37 -0000 1.66 @@ -292,5 +292,6 @@ label.justify.hedging.marks =Please, justify your hedging marks. label.incorrect.answer.nullifies.mark =Only correct answer selection assigns full mark +label.ask.for.hedging.justification =Ask for hedging justification? #======= End labels: Exported 283 labels for en AU ===== Index: lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/dbupdates/patch20150731.sql =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/dbupdates/patch20150731.sql,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/dbupdates/patch20150731.sql 31 Jul 2015 08:01:37 -0000 1.1 @@ -0,0 +1,14 @@ +-- Turn off autocommit, so nothing is committed if there is an error +SET AUTOCOMMIT = 0; +SET FOREIGN_KEY_CHECKS=0; +----------------------Put all sql statements below here------------------------- + +-- LDEV-3522 Add justification textareas to the hedging marks question type +ALTER TABLE tl_laasse10_assessment_question ADD COLUMN hedging_justification_enabled TINYINT(1) NOT NULL DEFAULT 0; + +----------------------Put all sql statements above here------------------------- + +-- If there were no errors, commit and restore autocommit to on +COMMIT; +SET AUTOCOMMIT = 1; +SET FOREIGN_KEY_CHECKS=1; \ No newline at end of file Index: lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/model/AssessmentQuestion.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/model/AssessmentQuestion.java,v diff -u -r1.25 -r1.26 --- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/model/AssessmentQuestion.java 6 Jul 2015 21:34:08 -0000 1.25 +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/model/AssessmentQuestion.java 31 Jul 2015 08:01:37 -0000 1.26 @@ -99,6 +99,9 @@ //only for essay type of question private int minWordsLimit; + //only for hedging mark type of question + private boolean hedgingJustificationEnabled; + // DTO fields: private String answerString; @@ -548,6 +551,18 @@ this.minWordsLimit = minWordsLimit; } + /** + * @hibernate.property column="hedging_justification_enabled" + * @return + */ + public boolean isHedgingJustificationEnabled() { + return hedgingJustificationEnabled; + } + + public void setHedgingJustificationEnabled(boolean hedgingJustificationEnabled) { + this.hedgingJustificationEnabled = hedgingJustificationEnabled; + } + public String getAnswerString() { return answerString; } 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.38 -r1.39 --- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/AuthoringAction.java 6 Jul 2015 21:34:08 -0000 1.38 +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/AuthoringAction.java 31 Jul 2015 08:01:37 -0000 1.39 @@ -1757,6 +1757,7 @@ form.setAllowRichEditor(question.isAllowRichEditor()); form.setMaxWordsLimit(question.getMaxWordsLimit()); form.setMinWordsLimit(question.getMinWordsLimit()); + form.setHedgingJustificationEnabled(question.isHedgingJustificationEnabled()); if (questionIdx >= 0) { form.setQuestionIndex(new Integer(questionIdx).toString()); } @@ -1857,6 +1858,7 @@ question.setFeedbackOnCorrect(questionForm.getFeedbackOnCorrect()); question.setFeedbackOnPartiallyCorrect(questionForm.getFeedbackOnPartiallyCorrect()); question.setFeedbackOnIncorrect(questionForm.getFeedbackOnIncorrect()); + question.setHedgingJustificationEnabled(questionForm.isHedgingJustificationEnabled()); } // set options 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.49 -r1.50 --- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/LearningAction.java 30 Jul 2015 16:47:26 -0000 1.49 +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/LearningAction.java 31 Jul 2015 08:01:37 -0000 1.50 @@ -802,10 +802,12 @@ } } - //store justificaion of hedging - String answerString = request.getParameter(AssessmentConstants.ATTR_QUESTION_PREFIX + i); - answerString = answerString.replaceAll("[\n\r\f]", ""); - question.setAnswerString(answerString); + //store justification of hedging if enabled + if (question.isHedgingJustificationEnabled()) { + String answerString = request.getParameter(AssessmentConstants.ATTR_QUESTION_PREFIX + i); + answerString = answerString.replaceAll("[\n\r\f]", ""); + question.setAnswerString(answerString); + } } } } @@ -866,8 +868,10 @@ } isAnswered = sumMarkHedging == question.getGrade(); - //verify justification of hedging is provided - isAnswered &= StringUtils.isNotBlank(question.getAnswerString()); + //verify justification of hedging is provided if it was enabled + if (question.isHedgingJustificationEnabled()) { + isAnswered &= StringUtils.isNotBlank(question.getAnswerString()); + } } // check all questions were answered Index: lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/form/AssessmentQuestionForm.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/form/AssessmentQuestionForm.java,v diff -u -r1.8 -r1.9 --- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/form/AssessmentQuestionForm.java 6 Jul 2015 21:34:08 -0000 1.8 +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/form/AssessmentQuestionForm.java 31 Jul 2015 08:01:37 -0000 1.9 @@ -60,6 +60,7 @@ private boolean allowRichEditor; private int maxWordsLimit; private int minWordsLimit; + private boolean hedgingJustificationEnabled; public String getSessionMapID() { return sessionMapID; @@ -245,4 +246,11 @@ this.minWordsLimit = minWordsLimit; } + public boolean isHedgingJustificationEnabled() { + return hedgingJustificationEnabled; + } + + public void setHedgingJustificationEnabled(boolean hedgingJustificationEnabled) { + this.hedgingJustificationEnabled = hedgingJustificationEnabled; + } } Index: lams_tool_assessment/web/pages/authoring/parts/addmarkhedging.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/web/pages/authoring/parts/addmarkhedging.jsp,v diff -u -r1.1 -r1.2 --- lams_tool_assessment/web/pages/authoring/parts/addmarkhedging.jsp 2 Jul 2015 21:39:04 -0000 1.1 +++ lams_tool_assessment/web/pages/authoring/parts/addmarkhedging.jsp 31 Jul 2015 08:01:37 -0000 1.2 @@ -160,6 +160,13 @@ +