Index: lams_central/web/includes/javascript/main.js =================================================================== diff -u -r05c00f92856ef13cd90d6fce06acb069418c2512 -r2ce1ca7a4995e15743c5800fdd789868b0236836 --- lams_central/web/includes/javascript/main.js (.../main.js) (revision 05c00f92856ef13cd90d6fce06acb069418c2512) +++ lams_central/web/includes/javascript/main.js (.../main.js) (revision 2ce1ca7a4995e15743c5800fdd789868b0236836) @@ -291,16 +291,15 @@ function showMonitorLessonDialog(lessonID) { - var id = "dialogMonitorLesson" + lessonID, dialog = showDialog(id, { 'data' : { 'isMonitorDialog' : true, 'lessonID' : lessonID }, 'autoOpen' : false, - 'height': Math.max(380, Math.min(800, $(window).height() - 30)), - 'width' : Math.max(380, Math.min(1024, $(window).width() - 60)), + 'height': Math.max(380, Math.min(monitor_height, $(window).height() - 30)), + 'width' : Math.max(380, Math.min(monitor_width, $(window).width() - 60)), 'title' : LABELS.MONITORING_TITLE, 'open' : function() { // load contents after opening the dialog Index: lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/web/TblMonitoringController.java =================================================================== diff -u -r0c0c19b682e95c31de267d8e3a7d8b174c9c511a -r2ce1ca7a4995e15743c5800fdd789868b0236836 --- lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/web/TblMonitoringController.java (.../TblMonitoringController.java) (revision 0c0c19b682e95c31de267d8e3a7d8b174c9c511a) +++ lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/web/TblMonitoringController.java (.../TblMonitoringController.java) (revision 2ce1ca7a4995e15743c5800fdd789868b0236836) @@ -265,9 +265,11 @@ @RequestMapping("/aes") public String aes(HttpServletRequest request, Model model) { String[] toolContentIds = request.getParameter("aeToolContentIds").split(","); + String[] toolTypes = request.getParameter("aeToolTypes").split(","); String[] activityTitles = request.getParameter("aeActivityTitles").split("\\,"); model.addAttribute("aeToolContentIds", toolContentIds); + model.addAttribute("aeToolTypes", toolTypes); model.addAttribute("aeActivityTitles", activityTitles); return "tblmonitor/aes"; @@ -385,6 +387,7 @@ boolean scratchiePassed = false; boolean iraPassed = false; String aeToolContentIds = ""; + String aeToolTypes = ""; String aeActivityTitles = ""; for (Activity activity : activities) { if (activity instanceof ToolActivity) { @@ -417,6 +420,7 @@ request.setAttribute("isAeAvailable", true); //prepare assessment details to be passed to Assessment tool aeToolContentIds += toolContentId + ","; + aeToolTypes += CommonConstants.TOOL_SIGNATURE_DOKU.equals(toolSignature) ? "d," : "a,"; aeActivityTitles += toolTitle + "\\,"; } else if (CommonConstants.TOOL_SIGNATURE_FORUM.equals(toolSignature)) { @@ -447,6 +451,7 @@ } request.setAttribute("aeToolContentIds", aeToolContentIds); + request.setAttribute("aeToolTypes", aeToolTypes); request.setAttribute("aeActivityTitles", aeActivityTitles); } } \ No newline at end of file Index: lams_monitoring/web/tblmonitor/aes.jsp =================================================================== diff -u -re2571e1eb04af477c8bcee954fd9203887041c6b -r2ce1ca7a4995e15743c5800fdd789868b0236836 --- lams_monitoring/web/tblmonitor/aes.jsp (.../aes.jsp) (revision e2571e1eb04af477c8bcee954fd9203887041c6b) +++ lams_monitoring/web/tblmonitor/aes.jsp (.../aes.jsp) (revision 2ce1ca7a4995e15743c5800fdd789868b0236836) @@ -10,31 +10,41 @@ var tblSelectedAeToolContentId = tblSelectedAeToolContentId || '${empty param.toolContentID ? aeToolContentIds[0] : param.toolContentID}'; $(document).ready(function(){ + loadAePane(tblSelectedAeToolContentId); + + // change attempted and all learners numbers + $('#aes-tab .nav-tabs').bind('click', function (event) { + var link = $(event.target); + // store which tab was cliked last + tblSelectedAeToolContentId = link.data("tool-content-id"); + + loadAePane(tblSelectedAeToolContentId); + }); + }); + + function loadAePane(targetToolContentId){ $('#aes-tab .tab-pane').each(function(){ var aePane = $(this), toolContentId = aePane.data('toolContentId'), + toolType = aePane.data('toolType'), nav = $('#aes-tab .nav-tabs a[data-tool-content-id="' + toolContentId + '"]').closest('li'); - - // load AE tab content for the given tool content ID - aePane.load("tool/laasse10/tblmonitoring/assessment.do?toolContentID=" + toolContentId); - - // re-select the previous tab or stick to whatever is in the parameter - if (toolContentId == tblSelectedAeToolContentId) { + + if (toolContentId == targetToolContentId) { + // load AE tab content for the given tool content ID + aePane.load(toolType == "d" ? + "tool/ladoku11/monitoring/ae.do?toolContentID=" + toolContentId + : "tool/laasse10/tblmonitoring/assessment.do?toolContentID=" + toolContentId); + aePane.addClass('active'); nav.addClass('active'); } else { - aePane.removeClass('active'); + aePane.empty().removeClass('active'); nav.removeClass('active'); } }); - // change attempted and all learners numbers - $('#aes-tab .nav-tabs').bind('click', function (event) { - var link = $(event.target); - // store which tab was cliked last - tblSelectedAeToolContentId = link.data("tool-content-id"); - }); - }); + } +
@@ -62,6 +72,7 @@
Index: lams_monitoring/web/tblmonitor/tblmonitor.jsp =================================================================== diff -u -r0c0c19b682e95c31de267d8e3a7d8b174c9c511a -r2ce1ca7a4995e15743c5800fdd789868b0236836 --- lams_monitoring/web/tblmonitor/tblmonitor.jsp (.../tblmonitor.jsp) (revision 0c0c19b682e95c31de267d8e3a7d8b174c9c511a) +++ lams_monitoring/web/tblmonitor/tblmonitor.jsp (.../tblmonitor.jsp) (revision 2ce1ca7a4995e15743c5800fdd789868b0236836) @@ -94,6 +94,7 @@ } else if (method == "aes") { options = { aeToolContentIds: "${aeToolContentIds}", + aeToolTypes: "${aeToolTypes}", aeActivityTitles: "${aeActivityTitles}" }; Index: lams_tool_assessment/web/pages/tblmonitoring/assessment.jsp =================================================================== diff -u -re2571e1eb04af477c8bcee954fd9203887041c6b -r2ce1ca7a4995e15743c5800fdd789868b0236836 --- lams_tool_assessment/web/pages/tblmonitoring/assessment.jsp (.../assessment.jsp) (revision e2571e1eb04af477c8bcee954fd9203887041c6b) +++ lams_tool_assessment/web/pages/tblmonitoring/assessment.jsp (.../assessment.jsp) (revision 2ce1ca7a4995e15743c5800fdd789868b0236836) @@ -5,7 +5,7 @@ $(document).ready(function(){ var assessmentPane = $('#assessment-pane-${toolContentID}'); //insert total learners number taken from the parent tblmonitor.jsp - $(".total-learners-number", assessmentPane).html(TOTAL_LESSON_LEARNERS_NUMBER); + $(".total-learners-number", assessmentPane).text(TOTAL_LESSON_LEARNERS_NUMBER); loadResultsPane($('.results', assessmentPane), false); }); Index: lams_tool_doku/conf/language/lams/ApplicationResources.properties =================================================================== diff -u -r06890c4feb9daa16dcea27bc2d38a31c42b33a59 -r2ce1ca7a4995e15743c5800fdd789868b0236836 --- lams_tool_doku/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 06890c4feb9daa16dcea27bc2d38a31c42b33a59) +++ lams_tool_doku/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 2ce1ca7a4995e15743c5800fdd789868b0236836) @@ -119,3 +119,4 @@ label.monitoring.change.leader = Change leader label.monitoring.leader.successfully.changed = Leader changed label.monitoring.leader.not.changed = Leader was not changed +label.attendance = Attendance \ No newline at end of file Index: lams_tool_doku/src/java/org/lamsfoundation/lams/tool/dokumaran/web/controller/MonitoringController.java =================================================================== diff -u -r3eb8dcbf308a6b082c30d57f51e7000ebbe1c184 -r2ce1ca7a4995e15743c5800fdd789868b0236836 --- lams_tool_doku/src/java/org/lamsfoundation/lams/tool/dokumaran/web/controller/MonitoringController.java (.../MonitoringController.java) (revision 3eb8dcbf308a6b082c30d57f51e7000ebbe1c184) +++ lams_tool_doku/src/java/org/lamsfoundation/lams/tool/dokumaran/web/controller/MonitoringController.java (.../MonitoringController.java) (revision 2ce1ca7a4995e15743c5800fdd789868b0236836) @@ -105,13 +105,15 @@ request.setAttribute(DokumaranConstants.ATTR_SESSION_MAP_ID, sessionMap.getSessionID()); // save contentFolderID into session sessionMap.put(AttributeNames.PARAM_CONTENT_FOLDER_ID, - WebUtil.readStrParam(request, AttributeNames.PARAM_CONTENT_FOLDER_ID)); + WebUtil.readStrParam(request, AttributeNames.PARAM_CONTENT_FOLDER_ID, true)); Long contentId = WebUtil.readLongParam(request, AttributeNames.PARAM_TOOL_CONTENT_ID); List groupList = dokumaranService.getSummary(contentId, null); boolean hasFaultySession = false; + int attemptedLearnersNumber = 0; for (SessionDTO group : groupList) { hasFaultySession |= group.isSessionFaulty(); + attemptedLearnersNumber += group.getNumberOfLearners(); } Dokumaran dokumaran = dokumaranService.getDokumaranByContentId(contentId); @@ -134,6 +136,7 @@ sessionMap.put(DokumaranConstants.ATTR_DOKUMARAN, dokumaran); sessionMap.put(DokumaranConstants.ATTR_TOOL_CONTENT_ID, contentId); sessionMap.put(DokumaranConstants.ATTR_IS_GROUPED_ACTIVITY, dokumaranService.isGroupedActivity(contentId)); + request.setAttribute("attemptedLearnersNumber", attemptedLearnersNumber); // get the API key from the config table and add it to the session String etherpadServerUrl = Configuration.get(ConfigurationKeys.ETHERPAD_SERVER_URL); @@ -312,6 +315,14 @@ dokumaranService.finishGalleryWalk(toolContentId); } + @RequestMapping("/ae") + private String tblApplicationExcercise(HttpServletRequest request, HttpServletResponse response) + throws EtherpadException { + summary(request, response); + request.setAttribute("isTbl", true); + return "pages/monitoring/summary"; + } + private Integer getUserId() { HttpSession ss = SessionManager.getSession(); UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER); Index: lams_tool_doku/web/pages/monitoring/monitoring.jsp =================================================================== diff -u -r368e60d0fd7df1a3e327670ef9d0f3487803110b -r2ce1ca7a4995e15743c5800fdd789868b0236836 --- lams_tool_doku/web/pages/monitoring/monitoring.jsp (.../monitoring.jsp) (revision 368e60d0fd7df1a3e327670ef9d0f3487803110b) +++ lams_tool_doku/web/pages/monitoring/monitoring.jsp (.../monitoring.jsp) (revision 2ce1ca7a4995e15743c5800fdd789868b0236836) @@ -5,7 +5,6 @@ <%@ include file="/common/tabbedheader.jsp" %> - @@ -108,7 +136,7 @@ $(document).ready(function(){ // show etherpads only on Group expand - $('.etherpad-collapse').on('show.bs.collapse', function(){ + $('#doku-monitoring-summary-${sessionMap.toolContentID} .etherpad-collapse').on('show.bs.collapse', function(){ var etherpad = $('.etherpad-container', this); if (!etherpad.hasClass('initialised')) { var id = etherpad.attr('id'), @@ -117,7 +145,7 @@ } }); - $(".fix-faulty-pad").click(function() { + $("#doku-monitoring-summary-${sessionMap.toolContentID} .fix-faulty-pad").click(function() { var toolSessionId = $(this).data("session-id"); var button = $(this); @@ -162,7 +190,7 @@ displayCountdown(); } - $("#start-activity").click(function() { + $("#doku-monitoring-summary-${sessionMap.toolContentID} #start-activity").click(function() { var button = $(this); button.hide(); @@ -181,7 +209,7 @@ ); //unpause countdown - $('#countdown').countdown('resume'); + $('#doku-monitoring-summary-${sessionMap.toolContentID} #countdown').countdown('resume'); isCountdownStarted = true; }, error: function (request, status, error) { @@ -193,7 +221,7 @@ return false; }); - $("#add-one-minute").click(function() { + $("#doku-monitoring-summary-${sessionMap.toolContentID} #add-one-minute").click(function() { var button = $(this); $.ajax({ @@ -202,16 +230,17 @@ data : 'toolContentID=${sessionMap.toolContentID}', type: 'post', success: function (response) { - var times = $("#countdown").countdown('getTimes'); + var countdown = $('#doku-monitoring-summary-${sessionMap.toolContentID} #countdown'); + var times = countdown.countdown('getTimes'); var secondsLeft = times[4]*3600 + times[5]*60 + times[6] + 60; if (isCountdownStarted) { - $('#countdown').countdown('option', { until: '+' + secondsLeft + 'S' }); + countdown.countdown('option', { until: '+' + secondsLeft + 'S' }); //fixing countdown bug of not updating it in case if being paused } else { - $('#countdown').countdown('resume'); - $('#countdown').countdown('option', { until: '+' + secondsLeft + 'S' }); - $('#countdown').countdown('pause'); + countdown.countdown('resume'); + countdown.countdown('option', { until: '+' + secondsLeft + 'S' }); + countdown.countdown('pause'); } }, @@ -225,7 +254,7 @@ // marks table for each group - var tablesorters = $(".tablesorter"); + var tablesorters = $("#doku-monitoring-summary-${sessionMap.toolContentID} .tablesorter"); // intialise tablesorter tables tablesorters.tablesorter({ theme: 'bootstrap', @@ -347,20 +376,25 @@ } }); }); + + + //insert total learners number taken from the parent tblmonitor.jsp + $("#doku-monitoring-summary-${sessionMap.toolContentID} .total-learners-number").text(TOTAL_LESSON_LEARNERS_NUMBER); + }); function displayCountdown() { - $('#countdown').countdown({ + $('#doku-monitoring-summary-${sessionMap.toolContentID} #countdown').countdown({ until: '+${sessionMap.secondsLeft}S', format: 'hMS', compact: true, description: "
", onTick: function(periods) { //check for 30 seconds if ((periods[4] == 0) && (periods[5] == 0) && (periods[6] <= 30)) { - $('#countdown').css('color', '#FF3333'); + $('#doku-monitoring-summary-${sessionMap.toolContentID} #countdown').css('color', '#FF3333'); } else { - $('#countdown').css('color', '#47bc23'); + $('#doku-monitoring-summary-${sessionMap.toolContentID} #countdown').css('color', '#47bc23'); } }, onExpiry: function(periods) { @@ -369,7 +403,7 @@ //pause countdown in case it hasn't been yet started if (${empty dokumaran.timeLimitLaunchedDate}) { - $('#countdown').countdown('pause'); + $('#doku-monitoring-summary-${sessionMap.toolContentID} #countdown').countdown('pause'); } } @@ -384,8 +418,10 @@ toolContentID : ${dokumaran.contentId} }, 'success' : function(){ - $('#gallery-walk-start, #countdown, #add-one-minute, #start-activity').hide(); - $('#gallery-walk-finish').removeClass('hidden'); + $('#doku-monitoring-summary-${sessionMap.toolContentID} #gallery-walk-start, ' + + '#doku-monitoring-summary-${sessionMap.toolContentID} #countdown, ' + + '#doku-monitoring-summary-${sessionMap.toolContentID} #add-one-minute, #start-activity').hide(); + $('#doku-monitoring-summary-${sessionMap.toolContentID} #gallery-walk-finish').removeClass('hidden'); } }); } @@ -403,7 +439,7 @@ 'success' : function(){ - $('#gallery-walk-finish').hide(); + $('#doku-monitoring-summary-${sessionMap.toolContentID} #gallery-walk-finish').hide(); location.reload(); @@ -415,7 +451,7 @@ function showChangeLeaderModal(toolSessionId) { - $('#change-leader-modals').empty() + $('#doku-monitoring-summary-${sessionMap.toolContentID} #change-leader-modals').empty() .load('',{ toolSessionID : toolSessionId }); @@ -448,184 +484,207 @@ -
-

- -

+ +
+
+ + +
+
+
+
+

+ + : ${attemptedLearnersNumber}/ +

+
+
+
+
+
+ +

+ +

+ + +
+
- + + + + + + + + +
- - - - - - - - -
- - -
- - -
- - - - - + +
+ + +
+ + + + + + + + + +
- - - - + + + + + +
- - - - - -
- -
-
-
+
+ +
- -

- - - - - - - - - - - - - - - - -
- - -
- - - - - -
-
- - - - - + +
+ +
+ + +
+ +
+
+ + + + + +
+ + + + + +
+ +
+ + + -
- -
- - -
- -
-
- + +
+ + "> + + + +
+ + + + + - - + +
+

+ +

+ + + +   + + + +
-
- - - - - -
- -
- - - - - -
- - "> - - - -
- - -
-
+ +
+
+ + ${ !sessionMap.isGroupedActivity || ! status.last ? '
 
' : ''} + +
- - -
-

- -

- - - -   - - - -
- -
-
+
- ${ !sessionMap.isGroupedActivity || ! status.last ? '
 
' : ''} + + + <%@ include file="reflections.jsp"%> + - - - - - + + <%@ include file="advanceoptions.jsp"%> + - - <%@ include file="reflections.jsp"%> - - -<%@ include file="advanceoptions.jsp"%> - -
\ No newline at end of file +
+ \ No newline at end of file