Index: lams_tool_lamc/conf/hibernate/mappings/org/lamsfoundation/lams/tool/mc/McQueUsr.hbm.xml =================================================================== diff -u -r2b4b4fd3565396f60d9436cd3da79551e015bbaf -r3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d --- lams_tool_lamc/conf/hibernate/mappings/org/lamsfoundation/lams/tool/mc/McQueUsr.hbm.xml (.../McQueUsr.hbm.xml) (revision 2b4b4fd3565396f60d9436cd3da79551e015bbaf) +++ lams_tool_lamc/conf/hibernate/mappings/org/lamsfoundation/lams/tool/mc/McQueUsr.hbm.xml (.../McQueUsr.hbm.xml) (revision 3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d) @@ -42,6 +42,14 @@ > + + - + @@ -801,6 +801,19 @@ + + + + + + + + + + + + + Index: lams_tool_lamc/db/sql/create_lams_tool_mc.sql =================================================================== diff -u -r915cf301e0c040728f0254ddd45ebb647b404ab7 -r3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d --- lams_tool_lamc/db/sql/create_lams_tool_mc.sql (.../create_lams_tool_mc.sql) (revision 915cf301e0c040728f0254ddd45ebb647b404ab7) +++ lams_tool_lamc/db/sql/create_lams_tool_mc.sql (.../create_lams_tool_mc.sql) (revision 3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d) @@ -72,6 +72,7 @@ , mc_session_id BIGINT(20) NOT NULL , username VARCHAR(100) , fullname VARCHAR(100) + , responseFinalised TINYINT(1) NOT NULL DEFAULT 0 , PRIMARY KEY (uid) , INDEX (mc_session_id) , CONSTRAINT FK_tl_lamc11_que_usr_1 FOREIGN KEY (mc_session_id) Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/pojos/McQueUsr.java =================================================================== diff -u -rc9531327d15636b54f293077ee1cd9f60195381b -r3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/pojos/McQueUsr.java (.../McQueUsr.java) (revision c9531327d15636b54f293077ee1cd9f60195381b) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/pojos/McQueUsr.java (.../McQueUsr.java) (revision 3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d) @@ -50,6 +50,8 @@ /** nullable persistent field */ private String fullname; + + private boolean responseFinalised; private Long mcSessionId; @@ -68,6 +70,18 @@ this.mcUsrAttempts = mcUsrAttempts; } + /** + * @return Returns the responseFinalised. + */ + public boolean isResponseFinalised() { + return responseFinalised; + } + /** + * @param responseFinalised The responseFinalised to set. + */ + public void setResponseFinalised(boolean responseFinalised) { + this.responseFinalised = responseFinalised; + } /** default constructor */ public McQueUsr() { } Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/IMcService.java =================================================================== diff -u -r4b57e04114818b323e27712d02c38e3f04cfd357 -r3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/IMcService.java (.../IMcService.java) (revision 4b57e04114818b323e27712d02c38e3f04cfd357) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/IMcService.java (.../IMcService.java) (revision 3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d) @@ -125,6 +125,8 @@ public void updateMcSession(McSession mcSession) throws McApplicationException; + public void updateMcQueUsr(McQueUsr mcQueUsr) throws McApplicationException; + public List getMcUserBySessionOnly(final McSession mcSession) throws McApplicationException; public List populateCandidateAnswersDTO(Long mcQueContentId) throws McApplicationException; Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/McServicePOJO.java =================================================================== diff -u -r4b57e04114818b323e27712d02c38e3f04cfd357 -r3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/McServicePOJO.java (.../McServicePOJO.java) (revision 4b57e04114818b323e27712d02c38e3f04cfd357) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/McServicePOJO.java (.../McServicePOJO.java) (revision 3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d) @@ -345,8 +345,22 @@ e); } } + + public void updateMcQueUsr(McQueUsr mcQueUsr) throws McApplicationException + { + try + { + mcUserDAO.updateMcUser(mcQueUsr); + } + catch (DataAccessException e) + { + throw new McApplicationException("Exception occured when lams is updating mc QueUsr: " + + e.getMessage(), + e); + } + } + - public McQueUsr getMcUserBySession(final Long queUsrId, final Long mcSessionId) throws McApplicationException { try Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McLearningAction.java =================================================================== diff -u -r204eca41fe68620695ab5eab4a23cbd4fdfac133 -r3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McLearningAction.java (.../McLearningAction.java) (revision 204eca41fe68620695ab5eab4a23cbd4fdfac133) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McLearningAction.java (.../McLearningAction.java) (revision 3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d) @@ -355,6 +355,10 @@ McQueUsr mcQueUsr=mcService.getMcUserBySession(new Long(userID), mcSession.getUid()); logger.debug("mcQueUsr:" + mcQueUsr); + mcQueUsr.setResponseFinalised(true); + mcService.updateMcQueUsr(mcQueUsr); + logger.debug("response finalised for user:" + mcQueUsr); + McUsrAttempt mcUsrAttempt = mcService.getAttemptWithLastAttemptOrderForUserInSession(mcQueUsr.getUid(), mcSession.getUid()); logger.debug("mcUsrAttempt with highest attempt order: " + mcUsrAttempt); String highestAttemptOrder=""; Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McLearningStarterAction.java =================================================================== diff -u -r7929353913d1cee7b5a4dc40da10b030c94d4fdd -r3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McLearningStarterAction.java (.../McLearningStarterAction.java) (revision 7929353913d1cee7b5a4dc40da10b030c94d4fdd) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McLearningStarterAction.java (.../McLearningStarterAction.java) (revision 3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d) @@ -443,6 +443,21 @@ logger.debug("sessionStatus: " +sessionStatus); /*one limitation by design here is that once a user finishes the activity, subsequent users in the same group are also assumed finished * since they belong to the same ungrouped activity and these users have the same tool session id*/ + + boolean isResponseFinalised=mcQueUsr.isResponseFinalised(); + logger.debug("isResponseFinalised: " +isResponseFinalised); + + if (isResponseFinalised) + { + mcLearningForm.setReportViewOnly(new Boolean(true).toString()); + } + else + { + mcLearningForm.setReportViewOnly(new Boolean(false).toString()); + } + + + /* if (sessionStatus.equals(COMPLETED)) { mcLearningForm.setReportViewOnly(new Boolean(true).toString()); @@ -451,7 +466,9 @@ { mcLearningForm.setReportViewOnly(new Boolean(false).toString()); } + */ + return mcLearningAction.viewAnswers(mapping, mcLearningForm, request, response); } Index: lams_tool_lamc/web/learning/IndividualLearnerResults.jsp =================================================================== diff -u -r204eca41fe68620695ab5eab4a23cbd4fdfac133 -r3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d --- lams_tool_lamc/web/learning/IndividualLearnerResults.jsp (.../IndividualLearnerResults.jsp) (revision 204eca41fe68620695ab5eab4a23cbd4fdfac133) +++ lams_tool_lamc/web/learning/IndividualLearnerResults.jsp (.../IndividualLearnerResults.jsp) (revision 3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d) @@ -187,24 +187,15 @@ - - - - - - + + + Index: lams_tool_lamc/web/learning/ViewAnswers.jsp =================================================================== diff -u -r204eca41fe68620695ab5eab4a23cbd4fdfac133 -r3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d --- lams_tool_lamc/web/learning/ViewAnswers.jsp (.../ViewAnswers.jsp) (revision 204eca41fe68620695ab5eab4a23cbd4fdfac133) +++ lams_tool_lamc/web/learning/ViewAnswers.jsp (.../ViewAnswers.jsp) (revision 3ec9e4aa0ad9319ce9be7f6fa84d9f35165f698d) @@ -167,7 +167,6 @@ - @@ -203,7 +202,7 @@ - +
-
- - - -
-
-
- - - -
-
+
+ + + +
+