Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/McAppConstants.java =================================================================== diff -u -r94789b14d5f0b1d8bf8e680bb6ef66742e5a27ec -rc68cf6aaed1c830c53afaf8838133b2dbd6647ee --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/McAppConstants.java (.../McAppConstants.java) (revision 94789b14d5f0b1d8bf8e680bb6ef66742e5a27ec) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/McAppConstants.java (.../McAppConstants.java) (revision c68cf6aaed1c830c53afaf8838133b2dbd6647ee) @@ -237,6 +237,7 @@ public static final String MONITORING_ERROR ="monitoringError"; public static final String MAP_MONITORING_QUESTIONS ="mapMonitoringQuestions"; public static final String SUMMARY_TOOL_SESSIONS ="summaryToolSessions"; + public static final String SUMMARY_TOOL_SESSIONS_ID ="summaryToolSessionsId"; public static final String MONITORED_CONTENT_ID ="monitoredContentId"; public static final String EDITACTIVITY_EDITMODE ="editActivityEditMode"; public static final String FORM_INDEX ="formIndex"; Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/McUtils.java =================================================================== diff -u -red40abcc81d077dd1c01791195ac0f0cff0a6dbe -rc68cf6aaed1c830c53afaf8838133b2dbd6647ee --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/McUtils.java (.../McUtils.java) (revision ed40abcc81d077dd1c01791195ac0f0cff0a6dbe) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/McUtils.java (.../McUtils.java) (revision c68cf6aaed1c830c53afaf8838133b2dbd6647ee) @@ -728,6 +728,7 @@ request.getSession().removeAttribute(MAP_CORRECT_FEEDBACK_LEARNER); request.getSession().removeAttribute(ACTIVITY_TITLE); request.getSession().removeAttribute(ACTIVITY_INSTRUCTIONS); + request.getSession().removeAttribute(SUMMARY_TOOL_SESSIONS_ID); cleanUpUserExceptions(request); logger.debug("completely cleaned the session."); Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/IMcSessionDAO.java =================================================================== diff -u -r20ace80303ee4b073668858cc7b41525375e241b -rc68cf6aaed1c830c53afaf8838133b2dbd6647ee --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/IMcSessionDAO.java (.../IMcSessionDAO.java) (revision 20ace80303ee4b073668858cc7b41525375e241b) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/IMcSessionDAO.java (.../IMcSessionDAO.java) (revision c68cf6aaed1c830c53afaf8838133b2dbd6647ee) @@ -115,6 +115,7 @@ */ public List getSessionsFromContent(McContent mcContent); + public List getSessionNamesFromContent(McContent mcContent); public int countSessionComplete(); Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McSessionDAO.java =================================================================== diff -u -ra6eff86456d65b16cb6de81107a0e7961d7c4876 -rc68cf6aaed1c830c53afaf8838133b2dbd6647ee --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McSessionDAO.java (.../McSessionDAO.java) (revision a6eff86456d65b16cb6de81107a0e7961d7c4876) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McSessionDAO.java (.../McSessionDAO.java) (revision c68cf6aaed1c830c53afaf8838133b2dbd6647ee) @@ -53,6 +53,8 @@ private static final String COUNT_SESSION_INCOMPLETE = "from mcSession in class McSession where mcSession.sessionStatus='INCOMPLETE'"; + private static final String GET_SESSIONNAMES_FROM_CONTENT = "select mcs.session_name from McSession mcs where mcs.mcContent=:mcContent order by mcs.mcSessionId"; + public McSession getMcSessionByUID(Long uid) { return (McSession) this.getHibernateTemplate() @@ -187,4 +189,12 @@ "mcContent", mcContent)); } + + public List getSessionNamesFromContent(McContent mcContent) + { + return (getHibernateTemplate().findByNamedParam(GET_SESSIONNAMES_FROM_CONTENT, + "mcContent", + mcContent)); + } + } Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/IMcService.java =================================================================== diff -u -r5a52a4c104c66462546e17c4d04424b4222d6304 -rc68cf6aaed1c830c53afaf8838133b2dbd6647ee --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/IMcService.java (.../IMcService.java) (revision 5a52a4c104c66462546e17c4d04424b4222d6304) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/IMcService.java (.../IMcService.java) (revision c68cf6aaed1c830c53afaf8838133b2dbd6647ee) @@ -127,8 +127,10 @@ public void deleteMcById(Long mcId) throws McApplicationException; - public void deleteMcSession(McSession mcSession) throws McApplicationException; + public void deleteMcSession(McSession mcSession) throws McApplicationException; + public List getSessionNamesFromContent(McContent mcContent) throws McApplicationException; + public void removeAttempt (McUsrAttempt attempt) throws McApplicationException; public void deleteMcQueUsr(McQueUsr mcQueUsr) throws McApplicationException; @@ -213,9 +215,7 @@ public List retrieveMcUploadedFiles(Long mcContentId, boolean fileOnline) throws McApplicationException; - //public List retrieveMcUploadedOfflineFilesUuidPlusFilename(Long mcContentId) throws McApplicationException; - - public void cleanUploadedFilesMetaData() throws McApplicationException; + public void cleanUploadedFilesMetaData() throws McApplicationException; public void persistFile(String uuid, boolean isOnlineFile, String fileName, McContent mcContent) throws McApplicationException; Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/McServicePOJO.java =================================================================== diff -u -r5a52a4c104c66462546e17c4d04424b4222d6304 -rc68cf6aaed1c830c53afaf8838133b2dbd6647ee --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/McServicePOJO.java (.../McServicePOJO.java) (revision 5a52a4c104c66462546e17c4d04424b4222d6304) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/McServicePOJO.java (.../McServicePOJO.java) (revision c68cf6aaed1c830c53afaf8838133b2dbd6647ee) @@ -566,7 +566,7 @@ } } - + public List refreshQuestionContent(final Long mcContentId) throws McApplicationException { try @@ -700,6 +700,21 @@ e); } } + + public List getSessionNamesFromContent(McContent mcContent) throws McApplicationException + { + try + { + return mcSessionDAO.getSessionNamesFromContent(mcContent); + } + catch (DataAccessException e) + { + throw new McApplicationException("Exception occured when lams is getting session names from content: " + + e.getMessage(), + e); + } + } + public void updateMc(McContent mc) throws McApplicationException Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McMonitoringStarterAction.java =================================================================== diff -u -r94789b14d5f0b1d8bf8e680bb6ef66742e5a27ec -rc68cf6aaed1c830c53afaf8838133b2dbd6647ee --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McMonitoringStarterAction.java (.../McMonitoringStarterAction.java) (revision 94789b14d5f0b1d8bf8e680bb6ef66742e5a27ec) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McMonitoringStarterAction.java (.../McMonitoringStarterAction.java) (revision c68cf6aaed1c830c53afaf8838133b2dbd6647ee) @@ -170,14 +170,17 @@ return false; } - Map summaryToolSessions=MonitoringUtil.populateToolSessions(request, mcContent); + Map summaryToolSessions=MonitoringUtil.populateToolSessions(request, mcContent, mcService); logger.debug("summaryToolSessions: " + summaryToolSessions); if (summaryToolSessions.isEmpty()) { /* inform in the Summary tab that the tool has no active sessions */ request.setAttribute(USER_EXCEPTION_NO_TOOL_SESSIONS, new Boolean(true)); } + Map summaryToolSessionsId=MonitoringUtil.populateToolSessionsId(request, mcContent, mcService); + logger.debug("summaryToolSessionsId: " + summaryToolSessionsId); + request.getSession().setAttribute(SUMMARY_TOOL_SESSIONS_ID, summaryToolSessionsId); /* this section is related to summary tab. Starts here. */ request.getSession().setAttribute(SUMMARY_TOOL_SESSIONS, summaryToolSessions); Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/MonitoringUtil.java =================================================================== diff -u -rdef2dd6db95cbaa6ae8116e6a63e948db2c403f5 -rc68cf6aaed1c830c53afaf8838133b2dbd6647ee --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/MonitoringUtil.java (.../MonitoringUtil.java) (revision def2dd6db95cbaa6ae8116e6a63e948db2c403f5) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/MonitoringUtil.java (.../MonitoringUtil.java) (revision c68cf6aaed1c830c53afaf8838133b2dbd6647ee) @@ -59,15 +59,12 @@ * @param mcContent * @return Map */ - public static Map populateToolSessions(HttpServletRequest request, McContent mcContent) + public static Map populateToolSessions(HttpServletRequest request, McContent mcContent, IMcService mcService) { - logger.debug("populating tool sessions for content:..." + mcContent); - IMcService mcService =McUtils.getToolService(request); - - List sessionsList=mcService.getSessionsFromContent(mcContent); + List sessionsList=mcService.getSessionNamesFromContent(mcContent); logger.debug("sessionsList size is:..." + sessionsList.size()); - Map sessionsMap=McUtils.convertToStringMap(sessionsList, "Long"); + Map sessionsMap=McUtils.convertToStringMap(sessionsList, "String"); logger.debug("generated sessionsMap:..." + sessionsMap); logger.debug("sessionsMap size:..." + sessionsMap.size()); @@ -83,10 +80,14 @@ } logger.debug("final sessionsMap:" + sessionsMap); - return sessionsMap; + return sessionsMap; + + } + + /** * ends up populating the attempt history for all the users of all the tool sessions for a content * buildGroupsQuestionData(HttpServletRequest request, McContent mcContent) @@ -147,7 +148,7 @@ Map mapMonitoredAttemptsContainerDTO= new TreeMap(new McStringComparator()); List listMonitoredAttemptsContainerDTO= new LinkedList(); - Map summaryToolSessions=populateToolSessions(request, mcContent); + Map summaryToolSessions=populateToolSessionsId(request, mcContent, mcService); logger.debug("summaryToolSessions: " + summaryToolSessions); Iterator itMap = summaryToolSessions.entrySet().iterator(); @@ -254,7 +255,32 @@ return mapMonitoredUserContainerDTO; } + public static Map populateToolSessionsId(HttpServletRequest request, McContent mcContent, IMcService mcService) + { + List sessionsList=mcService.getSessionsFromContent(mcContent); + logger.debug("sessionsList size is:..." + sessionsList.size()); + + Map sessionsMap=McUtils.convertToStringMap(sessionsList, "Long"); + logger.debug("generated sessionsMap:..." + sessionsMap); + logger.debug("sessionsMap size:..." + sessionsMap.size()); + + if (sessionsMap.isEmpty()) + { + logger.debug("sessionsMap size is 0:"); + sessionsMap.put(new Long(1).toString() , "None"); + } + else + { + logger.debug("sessionsMap has some entries: " + sessionsMap.size()); + sessionsMap.put(new Long(sessionsMap.size()+ 1).toString() , "All"); + } + + logger.debug("final sessionsMap:" + sessionsMap); + return sessionsMap; + } + + public static Map convertToMap(List list) { logger.debug("using convertToMap: " + list); Index: lams_tool_lamc/web/monitoring/SummaryContent.jsp =================================================================== diff -u -ra819720ed4933e91d93b0eb4a8a9801d31a6cb45 -rc68cf6aaed1c830c53afaf8838133b2dbd6647ee --- lams_tool_lamc/web/monitoring/SummaryContent.jsp (.../SummaryContent.jsp) (revision a819720ed4933e91d93b0eb4a8a9801d31a6cb45) +++ lams_tool_lamc/web/monitoring/SummaryContent.jsp (.../SummaryContent.jsp) (revision c68cf6aaed1c830c53afaf8838133b2dbd6647ee) @@ -47,32 +47,39 @@ - - + - - + + + + + + + + + + + + + + + + + + + + + + + + + +
-
+ - -