Index: lams_monitoring/conf/language/lams/ApplicationResources.properties
===================================================================
diff -u -r48340d4d314a3487c1ac43f91415cf57955b555e -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_monitoring/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 48340d4d314a3487c1ac43f91415cf57955b555e)
+++ lams_monitoring/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -500,3 +500,24 @@
button.canvas.original.size = Original size
button.canvas.original.size.tooltip = Show design image with original size
label.gate.stop.at.preceding = Learners will be stopped at the preceding activity.
+
+label.monitoring.time.limit = Timing limits
+label.monitoring.time.limit.relative = Duration relative to from student start
+label.monitoring.time.limit.relative.desc = Set the duration in minutes that the learners will have to have to complete the assessment. The duration will apply from the moment each learner begins the assessment. For example, if set to 5 minutes, all learners will have 5 minutes from the moment each of them start the assessment.
+label.monitoring.time.limit.absolute = Duration for all learners
+label.monitoring.time.limit.absolute.desc = Set the number of minutes to finish the assessment for all learners. This duration applies to all learners regardless when each of them starts the assessment. Set the minutes and click Start for the time to apply.
+label.monitoring.time.limit.individual = Individual extensions
+label.monitoring.time.limit.individual.desc = Apply duration extensions for individual learners/groups. Search the learner/group and then apply extra time.
+label.monitoring.time.limit.minutes = minutes
+label.monitoring.time.limit.enabled = Enabled
+label.monitoring.time.limit.disabled = Disabled
+label.monitoring.time.limit.start = Start
+label.monitoring.time.limit.cancel = Cancel
+label.monitoring.time.limit.plus.minute.1 = Plus 1 minute
+label.monitoring.time.limit.plus.minute.5 = Plus 5 minutes
+label.monitoring.time.limit.minus.minute.1 = Minus 1 minute
+label.monitoring.time.limit.minus.minute.5 = Minus 5 minutes
+label.monitoring.time.limit.finish.now = Finish now
+label.monitoring.time.limit.finish.now.confirm = Are you sure you want to make all learners finish their work right now?
+label.monitoring.time.limit.individual.placeholder = Type name
+label.monitoring.time.limit.expired = Expired
\ No newline at end of file
Index: lams_monitoring/web/timelimit/timeLimit.jsp
===================================================================
diff -u
--- lams_monitoring/web/timelimit/timeLimit.jsp (revision 0)
+++ lams_monitoring/web/timelimit/timeLimit.jsp (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -0,0 +1,558 @@
+<%@ include file="/taglibs.jsp"%>
+
+
+
+
+
+
+
+
+
Index: lams_tool_assessment/conf/language/lams/ApplicationResources.properties
===================================================================
diff -u -r3a2ed651885ed9e57c3c52799111d059e1cf93a3 -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_assessment/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 3a2ed651885ed9e57c3c52799111d059e1cf93a3)
+++ lams_tool_assessment/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -369,25 +369,6 @@
label.monitoring.user.summary.full.name = Full name
label.authoring.advance.question.etherpad = Include discussion pads for questions
label.etherpad.discussion = Discussion
-label.monitoring.summary.time.limit = Timing limits
-label.monitoring.summary.time.limit.relative = Duration relative to from student start
-label.monitoring.summary.time.limit.relative.desc = Set the duration in minutes that the learners will have to have to complete the assessment. The duration will apply from the moment each learner begins the assessment. For example, if set to 5 minutes, all learners will have 5 minutes from the moment each of them start the assessment.
-label.monitoring.summary.time.limit.absolute = Duration for all learners
-label.monitoring.summary.time.limit.absolute.desc = Set the number of minutes to finish the assessment for all learners. This duration applies to all learners regardless when each of them starts the assessment. Set the minutes and click Start for the time to apply.
-label.monitoring.summary.time.limit.individual = Individual extensions
-label.monitoring.summary.time.limit.individual.desc = Apply duration extensions for individual learners. Search the learner and then apply extra time.
-label.monitoring.summary.time.limit.minutes = minutes
-label.monitoring.summary.time.limit.enabled = Enabled
-label.monitoring.summary.time.limit.disabled = Disabled
-label.monitoring.summary.time.limit.start = Start
-label.monitoring.summary.time.limit.cancel = Cancel
-label.monitoring.summary.time.limit.plus.minute.1 = Plus 1 minute
-label.monitoring.summary.time.limit.plus.minute.5 = Plus 5 minutes
-label.monitoring.summary.time.limit.minus.minute.1 = Minus 1 minute
-label.monitoring.summary.time.limit.minus.minute.5 = Minus 5 minutes
-label.monitoring.summary.time.limit.finish.now = Finish now
-label.monitoring.summary.time.limit.finish.now.confirm = Are you sure you want to make all learners finish their work right now?
-label.monitoring.summary.time.limit.individual.placeholder = Type name
label.authoring.advance.answer.justification = Enable answer justification
label.answer.justification = Justification
label.answer.justification.prompt = Please justify your answer...
@@ -436,7 +417,6 @@
label.monitoring.leader.successfully.changed = Leader changed
label.monitoring.leader.not.changed = Leader was not changed
label.export.overall.summary = Overall summary
-label.monitoring.summary.time.limit.expired = Expired
label.monitoring.discussion.start = Start discussion sentiment
label.authoring.advance.discussion = Enable discussion sentiment voting
label.authoring.advance.discussion.tooltip = When enabled, in TBL monitoring, teachers are able to start instant polls for each question to assess the students' understanding.
Index: lams_tool_assessment/conf/language/lams/ApplicationResources_en_AU.properties
===================================================================
diff -u -r3a2ed651885ed9e57c3c52799111d059e1cf93a3 -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_assessment/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision 3a2ed651885ed9e57c3c52799111d059e1cf93a3)
+++ lams_tool_assessment/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -369,25 +369,6 @@
label.monitoring.user.summary.full.name = Full name
label.authoring.advance.question.etherpad = Include discussion pads for questions
label.etherpad.discussion = Discussion
-label.monitoring.summary.time.limit = Timing limits
-label.monitoring.summary.time.limit.relative = Duration relative to from student start
-label.monitoring.summary.time.limit.relative.desc = Set the duration in minutes that the learners will have to have to complete the assessment. The duration will apply from the moment each learner begins the assessment. For example, if set to 5 minutes, all learners will have 5 minutes from the moment each of them start the assessment.
-label.monitoring.summary.time.limit.absolute = Duration for all learners
-label.monitoring.summary.time.limit.absolute.desc = Set the number of minutes to finish the assessment for all learners. This duration applies to all learners regardless when each of them starts the assessment. Set the minutes and click Start for the time to apply.
-label.monitoring.summary.time.limit.individual = Individual extensions
-label.monitoring.summary.time.limit.individual.desc = Apply duration extensions for individual learners. Search the learner and then apply extra time.
-label.monitoring.summary.time.limit.minutes = minutes
-label.monitoring.summary.time.limit.enabled = Enabled
-label.monitoring.summary.time.limit.disabled = Disabled
-label.monitoring.summary.time.limit.start = Start
-label.monitoring.summary.time.limit.cancel = Cancel
-label.monitoring.summary.time.limit.plus.minute.1 = Plus 1 minute
-label.monitoring.summary.time.limit.plus.minute.5 = Plus 5 minutes
-label.monitoring.summary.time.limit.minus.minute.1 = Minus 1 minute
-label.monitoring.summary.time.limit.minus.minute.5 = Minus 5 minutes
-label.monitoring.summary.time.limit.finish.now = Finish now
-label.monitoring.summary.time.limit.finish.now.confirm = Are you sure you want to make all learners finish their work right now?
-label.monitoring.summary.time.limit.individual.placeholder = Type name
label.authoring.advance.answer.justification = Enable answer justification
label.answer.justification = Justification
label.answer.justification.prompt = Please justify your answer...
@@ -436,7 +417,6 @@
label.monitoring.leader.successfully.changed = Leader changed
label.monitoring.leader.not.changed = Leader was not changed
label.export.overall.summary = Overall summary
-label.monitoring.summary.time.limit.expired = Expired
label.monitoring.discussion.start = Start discussion sentiment
label.authoring.advance.discussion = Enable discussion sentiment voting
label.authoring.advance.discussion.tooltip = When enabled, in TBL monitoring, teachers are able to start instant polls for each question to assess the students' understanding.
Index: lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/controller/MonitoringController.java
===================================================================
diff -u -rf9cae5b21c66ce71a10d3e930fe8e40e265d2536 -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/controller/MonitoringController.java (.../MonitoringController.java) (revision f9cae5b21c66ce71a10d3e930fe8e40e265d2536)
+++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/controller/MonitoringController.java (.../MonitoringController.java) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -45,7 +45,6 @@
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
-import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
@@ -918,9 +917,9 @@
service.saveOrUpdateAssessment(assessment);
}
- @RequestMapping(path = "/getPossibleIndividualTimeLimitUsers", method = RequestMethod.GET)
+ @RequestMapping(path = "/getPossibleIndividualTimeLimits", method = RequestMethod.GET)
@ResponseBody
- public String getPossibleIndividualTimeLimitUsers(
+ public String getPossibleIndividualTimeLimits(
@RequestParam(name = AssessmentConstants.PARAM_TOOL_CONTENT_ID) long toolContentId,
@RequestParam(name = "term") String searchString) {
Assessment assessment = service.getAssessmentByContentId(toolContentId);
@@ -934,7 +933,7 @@
if (grouping != null) {
Set groups = grouping.getGroups();
for (Group group : groups) {
- if (!group.getUsers().isEmpty() && group.getGroupName().contains(searchString.toLowerCase())) {
+ if (!group.getUsers().isEmpty() && group.getGroupName().toLowerCase().contains(searchString.toLowerCase())) {
ObjectNode groupJSON = JsonNodeFactory.instance.objectNode();
groupJSON.put("label", groupLabel + group.getGroupName() + "\"");
groupJSON.put("value", "group-" + group.getGroupId());
@@ -952,7 +951,7 @@
String name = user.getFirstName() + " " + user.getLastName() + " (" + user.getLogin() + ")";
if (grouping != null) {
Group group = grouping.getGroupBy(user);
- if (group != null) {
+ if (group != null && !group.isNull()) {
name += " - " + group.getGroupName();
}
}
@@ -964,9 +963,9 @@
return responseJSON.toString();
}
- @RequestMapping(path = "/getExistingIndividualTimeLimitUsers", method = RequestMethod.GET)
+ @RequestMapping(path = "/getExistingIndividualTimeLimits", method = RequestMethod.GET)
@ResponseBody
- public String getExistingIndividualTimeLimitUsers(
+ public String getExistingIndividualTimeLimits(
@RequestParam(name = AssessmentConstants.PARAM_TOOL_CONTENT_ID) long toolContentId) {
Assessment assessment = service.getAssessmentByContentId(toolContentId);
Map timeLimitAdjustments = assessment.getTimeLimitAdjustments();
Index: lams_tool_assessment/web/WEB-INF/jboss-web.xml
===================================================================
diff -u
--- lams_tool_assessment/web/WEB-INF/jboss-web.xml (revision 0)
+++ lams_tool_assessment/web/WEB-INF/jboss-web.xml (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -0,0 +1,6 @@
+
+ false
+
\ No newline at end of file
Fisheye: Tag 5563dc18a8b8d19478fb804c8beef31e63bd249b refers to a dead (removed) revision in file `lams_tool_assessment/web/pages/monitoring/parts/timeLimit.jsp'.
Fisheye: No comparison available. Pass `N' to diff?
Index: lams_tool_assessment/web/pages/monitoring/summary.jsp
===================================================================
diff -u -rf9cae5b21c66ce71a10d3e930fe8e40e265d2536 -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_assessment/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision f9cae5b21c66ce71a10d3e930fe8e40e265d2536)
+++ lams_tool_assessment/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -366,7 +366,7 @@
+ href='qb/vsa/displayVsaAllocate.do?toolContentID=${assessment.contentId}'>
@@ -387,7 +387,13 @@
<%@ include file="parts/advanceoptions.jsp"%>
-<%@ include file="parts/timeLimit.jsp"%>
+
+
+
+
+
+
+
<%@ include file="parts/dateRestriction.jsp"%>
Index: lams_tool_assessment/web/pages/tblmonitoring/assessmentStudentChoices.jsp
===================================================================
diff -u -r992c737198ecd3a7eb3b1096c6dad894199795ff -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_assessment/web/pages/tblmonitoring/assessmentStudentChoices.jsp (.../assessmentStudentChoices.jsp) (revision 992c737198ecd3a7eb3b1096c6dad894199795ff)
+++ lams_tool_assessment/web/pages/tblmonitoring/assessmentStudentChoices.jsp (.../assessmentStudentChoices.jsp) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -157,4 +157,11 @@
-<%@ include file="/pages/monitoring/parts/timeLimit.jsp"%>
+
+
+
+
+
+
+
+
Index: lams_tool_assessment/web/pages/tblmonitoring/iraAssessmentStudentChoices.jsp
===================================================================
diff -u -re2c747ae39b6b485d87919db2b328756a875814a -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_assessment/web/pages/tblmonitoring/iraAssessmentStudentChoices.jsp (.../iraAssessmentStudentChoices.jsp) (revision e2c747ae39b6b485d87919db2b328756a875814a)
+++ lams_tool_assessment/web/pages/tblmonitoring/iraAssessmentStudentChoices.jsp (.../iraAssessmentStudentChoices.jsp) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -110,4 +110,10 @@
<%-- Include student's choices part --%>
<%@ include file="/pages/monitoring/parts/mcqStudentChoices.jsp" %>
-<%@ include file="/pages/monitoring/parts/timeLimit.jsp"%>
\ No newline at end of file
+
+
+
+
+
+
+
Index: lams_tool_doku/conf/language/lams/ApplicationResources.properties
===================================================================
diff -u -r3a2ed651885ed9e57c3c52799111d059e1cf93a3 -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_doku/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 3a2ed651885ed9e57c3c52799111d059e1cf93a3)
+++ lams_tool_doku/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -120,28 +120,8 @@
label.authoring.basic.instructions.tooltip = If you want the students to have a template document to guide them on their collaborative response, add your template here.
label.authoring.basic.description.tooltip = Description or case to be presented to students.
label.attendance = Attendance
-label.monitoring.summary.time.limit.individual.placeholder = Type name
-label.monitoring.summary.time.limit.finish.now.confirm = Are you sure you want to make all learners finish their work right now?
-label.monitoring.summary.time.limit.finish.now = Finish now
-label.monitoring.summary.time.limit.minus.minute.5 = Minus 5 minutes
-label.monitoring.summary.time.limit.minus.minute.1 = Minus 1 minute
-label.monitoring.summary.time.limit.plus.minute.5 = Plus 5 minutes
-label.monitoring.summary.time.limit.plus.minute.1 = Plus 1 minute
-label.monitoring.summary.time.limit.cancel = Cancel
-label.monitoring.summary.time.limit.start = Start
-label.monitoring.summary.time.limit.disabled = Disabled
-label.monitoring.summary.time.limit.enabled = Enabled
-label.monitoring.summary.time.limit.minutes = minutes
-label.monitoring.summary.time.limit.individual.desc = Apply duration extensions for individual learners. Search the learner and then apply extra time.
-label.monitoring.summary.time.limit.individual = Individual extensions
-label.monitoring.summary.time.limit.absolute.desc = Set the number of minutes to finish the assessment for all learners. This duration applies to all learners regardless when each of them starts the assessment. Set the minutes and click Start for the time to apply.
-label.monitoring.summary.time.limit.absolute = Duration for all learners
-label.monitoring.summary.time.limit.relative.desc = Set the duration in minutes that the learners will have to have to complete the assessment. The duration will apply from the moment each learner begins the assessment. For example, if set to 5 minutes, all learners will have 5 minutes from the moment each of them start the assessment.
-label.monitoring.summary.time.limit.relative = Duration relative to from student start
-label.monitoring.summary.time.limit = Timing limits
label.time.limit.tooltip = Number of minutes that each student will get from the moment they enter this activity. Leave it at 0 for no time restrictions.
label.monitoring.learner.marks.name = Name
-label.monitoring.summary.time.limit.expired = Expired
label.show.chat.tooltip = Enables the chat feature allowing students to exchange messages while working on the document simultaneously.
monitoring.summary.gallery.walk.learner.edit = Let learners modify answers
monitoring.summary.gallery.walk.learner.edit.confirm = Are you sure you want allows students to modify their answers while performing the Gallery Walk?
Index: lams_tool_doku/conf/language/lams/ApplicationResources_en_AU.properties
===================================================================
diff -u -r3a2ed651885ed9e57c3c52799111d059e1cf93a3 -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_doku/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision 3a2ed651885ed9e57c3c52799111d059e1cf93a3)
+++ lams_tool_doku/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -120,28 +120,8 @@
label.authoring.basic.instructions.tooltip = If you want the students to have a template document to guide them on their collaborative response, add your template here.
label.authoring.basic.description.tooltip = Description or case to be presented to students.
label.attendance = Attendance
-label.monitoring.summary.time.limit.individual.placeholder = Type name
-label.monitoring.summary.time.limit.finish.now.confirm = Are you sure you want to make all learners finish their work right now?
-label.monitoring.summary.time.limit.finish.now = Finish now
-label.monitoring.summary.time.limit.minus.minute.5 = Minus 5 minutes
-label.monitoring.summary.time.limit.minus.minute.1 = Minus 1 minute
-label.monitoring.summary.time.limit.plus.minute.5 = Plus 5 minutes
-label.monitoring.summary.time.limit.plus.minute.1 = Plus 1 minute
-label.monitoring.summary.time.limit.cancel = Cancel
-label.monitoring.summary.time.limit.start = Start
-label.monitoring.summary.time.limit.disabled = Disabled
-label.monitoring.summary.time.limit.enabled = Enabled
-label.monitoring.summary.time.limit.minutes = minutes
-label.monitoring.summary.time.limit.individual.desc = Apply duration extensions for individual learners. Search the learner and then apply extra time.
-label.monitoring.summary.time.limit.individual = Individual extensions
-label.monitoring.summary.time.limit.absolute.desc = Set the number of minutes to finish the assessment for all learners. This duration applies to all learners regardless when each of them starts the assessment. Set the minutes and click Start for the time to apply.
-label.monitoring.summary.time.limit.absolute = Duration for all learners
-label.monitoring.summary.time.limit.relative.desc = Set the duration in minutes that the learners will have to have to complete the assessment. The duration will apply from the moment each learner begins the assessment. For example, if set to 5 minutes, all learners will have 5 minutes from the moment each of them start the assessment.
-label.monitoring.summary.time.limit.relative = Duration relative to from student start
-label.monitoring.summary.time.limit = Timing limits
label.time.limit.tooltip = Number of minutes that each student will get from the moment they enter this activity. Leave it at 0 for no time restrictions.
label.monitoring.learner.marks.name = Name
-label.monitoring.summary.time.limit.expired = Expired
label.show.chat.tooltip = Enables the chat feature allowing students to exchange messages while working on the document simultaneously.
monitoring.summary.gallery.walk.learner.edit = Let learners modify answers
monitoring.summary.gallery.walk.learner.edit.confirm = Are you sure you want allows students to modify their answers while performing the Gallery Walk?
Index: lams_tool_doku/src/java/org/lamsfoundation/lams/tool/dokumaran/web/controller/MonitoringController.java
===================================================================
diff -u -rca5a2db0956e5e04be5cbf1354c234f47c7c6353 -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_doku/src/java/org/lamsfoundation/lams/tool/dokumaran/web/controller/MonitoringController.java (.../MonitoringController.java) (revision ca5a2db0956e5e04be5cbf1354c234f47c7c6353)
+++ lams_tool_doku/src/java/org/lamsfoundation/lams/tool/dokumaran/web/controller/MonitoringController.java (.../MonitoringController.java) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -348,9 +348,9 @@
dokumaranService.saveOrUpdate(dokumaran);
}
- @RequestMapping(path = "/getPossibleIndividualTimeLimitUsers", method = RequestMethod.GET)
+ @RequestMapping(path = "/getPossibleIndividualTimeLimits", method = RequestMethod.GET)
@ResponseBody
- public String getPossibleIndividualTimeLimitUsers(
+ public String getPossibleIndividualTimeLimits(
@RequestParam(name = AttributeNames.PARAM_TOOL_CONTENT_ID) long toolContentId,
@RequestParam(name = "term") String searchString) {
Dokumaran dokumaran = dokumaranService.getDokumaranByContentId(toolContentId);
@@ -364,7 +364,8 @@
if (grouping != null) {
Set groups = grouping.getGroups();
for (Group group : groups) {
- if (!group.getUsers().isEmpty() && group.getGroupName().contains(searchString.toLowerCase())) {
+ if (!group.getUsers().isEmpty()
+ && group.getGroupName().toLowerCase().contains(searchString.toLowerCase())) {
ObjectNode groupJSON = JsonNodeFactory.instance.objectNode();
groupJSON.put("label", groupLabel + group.getGroupName() + "\"");
groupJSON.put("value", "group-" + group.getGroupId());
@@ -382,7 +383,7 @@
String name = user.getFirstName() + " " + user.getLastName() + " (" + user.getLogin() + ")";
if (grouping != null) {
Group group = grouping.getGroupBy(user);
- if (group != null) {
+ if (group != null && !group.isNull()) {
name += " - " + group.getGroupName();
}
}
@@ -394,9 +395,9 @@
return responseJSON.toString();
}
- @RequestMapping(path = "/getExistingIndividualTimeLimitUsers", method = RequestMethod.GET)
+ @RequestMapping(path = "/getExistingIndividualTimeLimits", method = RequestMethod.GET)
@ResponseBody
- public String getExistingIndividualTimeLimitUsers(
+ public String getExistingIndividualTimeLimits(
@RequestParam(name = AttributeNames.PARAM_TOOL_CONTENT_ID) long toolContentId) {
Dokumaran dokumaran = dokumaranService.getDokumaranByContentId(toolContentId);
Map timeLimitAdjustments = dokumaran.getTimeLimitAdjustments();
Index: lams_tool_doku/web/WEB-INF/jboss-web.xml
===================================================================
diff -u
--- lams_tool_doku/web/WEB-INF/jboss-web.xml (revision 0)
+++ lams_tool_doku/web/WEB-INF/jboss-web.xml (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -0,0 +1,6 @@
+
+ false
+
\ No newline at end of file
Index: lams_tool_doku/web/pages/monitoring/summary.jsp
===================================================================
diff -u -r7cc83a13778a6885aa6264531a9d06f67901186c -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_doku/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision 7cc83a13778a6885aa6264531a9d06f67901186c)
+++ lams_tool_doku/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -407,334 +407,6 @@
}
}
-
-
- // TIME LIMIT
- // in minutes since learner entered the activity
- var relativeTimeLimit = ${dokumaran.relativeTimeLimit},
- // in seconds since epoch started
- absoluteTimeLimit = ${empty dokumaran.absoluteTimeLimit ? 'null' : dokumaran.absoluteTimeLimitSeconds};
-
- function updateTimeLimit(type, toggle, adjust) {
- // relavite time limit set
- if (type == 'relative') {
- // what is set at the moment on screen, not at server
- var displayedRelativeTimeLimit = +$('#relative-time-limit-value').text();
-
- // start/stop
- if (toggle !== null) {
-
- if (toggle === false) {
- // stop, i.e. set time limit to 0
- relativeTimeLimit = 0;
- updateTimeLimitOnServer();
- return;
- }
-
- // start, i.e. set backend time limit to whatever is set on screen
- if (toggle === true && displayedRelativeTimeLimit > 0) {
- relativeTimeLimit = displayedRelativeTimeLimit;
- // when teacher enables relative time limit, absolute one gets disabled
- absoluteTimeLimit = null;
- updateTimeLimitOnServer();
- }
- return;
- }
-
- // no negative time limit is allowed
- if (displayedRelativeTimeLimit == 0 && adjust < 0) {
- return;
- }
-
- var adjustedRelativeTimeLimit = displayedRelativeTimeLimit + adjust;
- // at least one minute is required
- // if teacher wants to set less, he should disable the limit or click "finish now"
- if (adjustedRelativeTimeLimit < 1) {
- adjustedRelativeTimeLimit = 1;
- }
-
- // is time limit already enforced? if so, update the server
- if (relativeTimeLimit > 0) {
- relativeTimeLimit = adjustedRelativeTimeLimit;
- updateTimeLimitOnServer();
- return;
- }
-
- // if time limit is not enforced yet, just update the screen
- displayedRelativeTimeLimit = adjustedRelativeTimeLimit;
- $('#relative-time-limit-value').text(displayedRelativeTimeLimit);
- $('#relative-time-limit-start').prop('disabled', false);
- return;
- }
-
- if (type == 'absolute') {
- // get existing value on counter, if it is set already
- var counter = $('#absolute-time-limit-counter'),
- secondsLeft = null;
- if (counter.length === 1) {
- var periods = counter.countdown('getTimes');
- secondsLeft = $.countdown.periodsToSeconds(periods);
- }
-
- if (toggle !== null) {
-
- // start/stop
- if (toggle === false) {
- absoluteTimeLimit = null;
- updateAbsoluteTimeLimitCounter();
- return;
- }
-
- // turn on the time limit, if there is any value on counter set already
- if (toggle === true && secondsLeft) {
- updateAbsoluteTimeLimitCounter(secondsLeft, true);
- return;
- }
-
- if (toggle === 'stop') {
- absoluteTimeLimit = Math.round(new Date().getTime() / 1000);
- updateAbsoluteTimeLimitCounter();
- }
- return;
- }
-
- // counter is not set yet and user clicked negative value
- if (!secondsLeft && adjust < 0) {
- return;
- }
-
- // adjust time
- secondsLeft += adjust * 60;
- if (secondsLeft < 60) {
- secondsLeft = 60;
- }
-
- // is time limit already enforced, update the server
- // if time limit is not enforced yet, just update the screen
- updateAbsoluteTimeLimitCounter(secondsLeft);
- $('#absolute-time-limit-start').prop('disabled', false);
- return;
- }
-
- if (type == 'individual') {
- // this method is called with updateTimeLimit.call() so we can change meaning of "this"
- // and identify row and userUid
- var button = $(this),
- row = button.closest('.individual-time-limit-row'),
- userId = row.data('userId');
-
- // disable individual time adjustment
- if (toggle === false) {
- updateIndividualTimeLimitOnServer('user-' + userId);
- return;
- }
- var existingAdjustment = +$('.individual-time-limit-value', row).text(),
- newAdjustment = existingAdjustment + adjust;
-
- updateIndividualTimeLimitOnServer('user-' + userId, newAdjustment);
- return;
- }
- }
-
- function updateTimeLimitOnServer() {
-
- // absolute time limit has higher priority
- if (absoluteTimeLimit != null) {
- relativeTimeLimit = 0;
- }
-
- $.ajax({
- 'url' : '',
- 'type': 'post',
- 'cache' : 'false',
- 'data': {
- 'toolContentID' : '${sessionMap.toolContentID}',
- 'relativeTimeLimit' : relativeTimeLimit,
- 'absoluteTimeLimit' : absoluteTimeLimit,
- '' : ''
- },
- success : function(){
- // update widgets
- $('#relative-time-limit-value').text(relativeTimeLimit);
-
- if (relativeTimeLimit > 0) {
- $('#relative-time-limit-disabled').addClass('hidden');
- $('#relative-time-limit-cancel').removeClass('hidden');
- $('#relative-time-limit-enabled').removeClass('hidden');
- $('#relative-time-limit-start').addClass('hidden');
- } else {
- $('#relative-time-limit-disabled').removeClass('hidden');
- $('#relative-time-limit-cancel').addClass('hidden');
- $('#relative-time-limit-enabled').addClass('hidden');
- $('#relative-time-limit-start').removeClass('hidden').prop('disabled', true);
- }
-
- if (absoluteTimeLimit === null) {
- // no absolute time limit? destroy the counter
- $('#absolute-time-limit-counter').countdown('destroy');
- $('#absolute-time-limit-value').empty();
-
- $('#absolute-time-limit-disabled').removeClass('hidden');
- $('#absolute-time-limit-cancel').addClass('hidden');
- $('#absolute-time-limit-enabled').addClass('hidden');
- $('#absolute-time-limit-start').removeClass('hidden').prop('disabled', true);
- $('#absolute-time-limit-finish-now').prop('disabled', false);
- } else {
- $('#absolute-time-limit-disabled').addClass('hidden');
- $('#absolute-time-limit-cancel').removeClass('hidden');
- $('#absolute-time-limit-enabled').removeClass('hidden');
- $('#absolute-time-limit-start').addClass('hidden');
- $('#absolute-time-limit-finish-now').prop('disabled', absoluteTimeLimit <= Math.round(new Date().getTime() / 1000));
- }
- }
- });
- }
-
- function updateAbsoluteTimeLimitCounter(secondsLeft, start) {
- var now = Math.round(new Date().getTime() / 1000),
- // preset means that counter is set just on screen and the time limit is not enforced for learners
- preset = start !== true && absoluteTimeLimit == null;
-
- if (secondsLeft) {
- if (!preset) {
- // time limit is already enforced on server, so update it there now
- absoluteTimeLimit = now + secondsLeft;
- updateTimeLimitOnServer();
- }
- } else {
- if (absoluteTimeLimit == null) {
- // disable the counter
- updateTimeLimitOnServer();
- return;
- }
- // counter initialisation on page load or "finish now"
- secondsLeft = absoluteTimeLimit - now;
- if (secondsLeft <= 0) {
- // finish now
- updateTimeLimitOnServer();
- }
- }
-
- var counter = $('#absolute-time-limit-counter');
-
- if (counter.length == 0) {
- counter = $('').attr('id', 'absolute-time-limit-counter').appendTo('#absolute-time-limit-value')
- .countdown({
- until: '+' + secondsLeft +'S',
- format: 'hMS',
- compact: true,
- alwaysExpire : true,
- onTick: function(periods) {
- // check for 30 seconds or less and display timer in red
- var secondsLeft = $.countdown.periodsToSeconds(periods);
- if (secondsLeft <= 30) {
- counter.addClass('countdown-timeout');
- } else {
- counter.removeClass('countdown-timeout');
- }
- },
- expiryText : ''
- });
- } else {
- // if counter is paused, we can not adjust time, so resume it for a moment
- counter.countdown('resume');
- counter.countdown('option', 'until', secondsLeft + 'S');
- }
-
- if (preset) {
- counter.countdown('pause');
- $('#absolute-time-limit-start').removeClass('disabled');
- } else {
- counter.countdown('resume');
- }
- }
-
- function timeLimitFinishNow(){
- if (confirm('')) {
- updateTimeLimit('absolute', 'stop');
- }
- }
-
-
- function initInidividualTimeLimitAutocomplete(){
- $('#individual-time-limit-autocomplete').autocomplete({
- 'source' : '?toolContentID=${sessionMap.toolContentID}',
- 'delay' : 700,
- 'minLength' : 3,
- 'select' : function(event, ui){
- // user ID or group ID, and default 0 adjustment
- updateIndividualTimeLimitOnServer(ui.item.value, 0);
-
- // clear search field
- $(this).val('');
- return false;
- },
- 'focus': function() {
- // Stop the autocomplete of resetting the value to the selected one
- // It puts LAMS user ID instead of user name
- event.preventDefault();
- }
- });
-
- refreshInidividualTimeLimitUsers();
- }
-
-
- function updateIndividualTimeLimitOnServer(itemId, adjustment) {
- $.ajax({
- 'url' : '',
- 'type': 'post',
- 'cache' : 'false',
- 'data': {
- 'toolContentID' : '${sessionMap.toolContentID}',
- // itemId can user- or group-
- 'itemId' : itemId,
- 'adjustment' : adjustment,
- '' : ''
- },
- success : function(){
- refreshInidividualTimeLimitUsers();
- }
- });
- }
-
-
- function refreshInidividualTimeLimitUsers() {
- var table = $('#time-limit-table');
-
- $.ajax({
- 'url' : '',
- 'dataType' : 'json',
- 'cache' : 'false',
- 'data': {
- 'toolContentID' : '${sessionMap.toolContentID}'
- },
- success : function(users) {
- // remove existing users
- $('.individual-time-limit-row', table).remove();
-
- if (!users) {
- return;
- }
-
- var template = $('#individual-time-limit-template-row'),
- now = new Date().getTime();
- $.each(users, function(){
- var row = template.clone()
- .attr('id', 'individual-time-limit-row-' + this.userId)
- .data('userId', this.userId)
- .addClass('individual-time-limit-row')
- .appendTo(table);
- $('.individual-time-limit-user-name', row).text(this.name);
- $('.individual-time-limit-value', row).text(this.adjustment);
-
- row.removeClass('hidden');
- });
- }
- });
- }
-
- // END OF TIME LIMIT
@@ -944,7 +616,13 @@
<%@ include file="advanceoptions.jsp"%>
- <%@ include file="timeLimit.jsp"%>
+
+
+
+
+
+
+
\ No newline at end of file
Fisheye: Tag 5563dc18a8b8d19478fb804c8beef31e63bd249b refers to a dead (removed) revision in file `lams_tool_doku/web/pages/monitoring/timeLimit.jsp'.
Fisheye: No comparison available. Pass `N' to diff?
Index: lams_tool_scratchie/conf/language/lams/ApplicationResources.properties
===================================================================
diff -u -r6027dca0125bccd15dcdae16bc108177f85e7f73 -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_scratchie/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 6027dca0125bccd15dcdae16bc108177f85e7f73)
+++ lams_tool_scratchie/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -292,26 +292,6 @@
label.total.1st.attempt.by.question = Sums all the teams that answer this question correctly in their first attempt.
label.total.1st.attempt.average = Average of all the times in which teams answered questions correctly in their first attempt.
label.export.overall.summary = Overall summary
-label.monitoring.summary.time.limit = Timing limits
-label.monitoring.summary.time.limit.relative = Duration relative to when leader start
-label.monitoring.summary.time.limit.relative.desc = Set the duration in minutes that the leaders will have to complete the assessment. The duration will apply from the moment each leader begins the activity. For example, if set to 5 minutes, all leaders will have 5 minutes from the moment each of them start the activity.
-label.monitoring.summary.time.limit.absolute = Duration for all groups
-label.monitoring.summary.time.limit.absolute.desc = Set the number of minutes to finish the activity for all groups. This duration applies to all groups regardless when each of them starts the activity. Set the minutes and click Start for the time to apply.
-label.monitoring.summary.time.limit.individual = Individual extensions
-label.monitoring.summary.time.limit.individual.desc = Apply duration extensions only for certain groups. Search the group and then apply extra time.
-label.monitoring.summary.time.limit.minutes = minutes
-label.monitoring.summary.time.limit.enabled = Enabled
-label.monitoring.summary.time.limit.disabled = Disabled
-label.monitoring.summary.time.limit.start = Start
-label.monitoring.summary.time.limit.cancel = Cancel
-label.monitoring.summary.time.limit.plus.minute.1 = Plus 1 minute
-label.monitoring.summary.time.limit.plus.minute.5 = Plus 5 minutes
-label.monitoring.summary.time.limit.minus.minute.1 = Minus 1 minute
-label.monitoring.summary.time.limit.minus.minute.5 = Minus 5 minutes
-label.monitoring.summary.time.limit.finish.now = Finish now
-label.monitoring.summary.time.limit.finish.now.confirm = Are you sure you want to make all groups finish their work right now?
-label.monitoring.summary.time.limit.individual.placeholder = Type name
-label.monitoring.summary.time.limit.expired = Expired
label.monitoring.discussion.start = Start discussion sentiment
label.authoring.advanced.discussion = Enable discussion sentiment voting
label.authoring.advanced.discussion.tooltip = When enabled, in TBL monitoring, teachers are able to start instant polls for each burning question to assess the students' understanding.
Index: lams_tool_scratchie/conf/language/lams/ApplicationResources_en_AU.properties
===================================================================
diff -u -r3ba014b62a527d852888ef46df8386441decf1d2 -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_scratchie/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision 3ba014b62a527d852888ef46df8386441decf1d2)
+++ lams_tool_scratchie/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -248,6 +248,7 @@
label.no.case.unimportant = No, case is unimportant
label.yes.case.must.match = Yes, case must match
label.case.sensitivity = Case sensitivity
+label.exact.match = Learner answer must exactly match expected answer
label.autocomplete.as.student = Autocomplete (as student types answer autocomplete with stemming from answers)
label.general.feedback = General feedback
label.authoring.choice.field.required = This field is required.
@@ -291,26 +292,6 @@
label.total.1st.attempt.by.question = Sums all the teams that answer this question correctly in their first attempt.
label.total.1st.attempt.average = Average of all the times in which teams answered questions correctly in their first attempt.
label.export.overall.summary = Overall summary
-label.monitoring.summary.time.limit = Timing limits
-label.monitoring.summary.time.limit.relative = Duration relative to when leader start
-label.monitoring.summary.time.limit.relative.desc = Set the duration in minutes that the leaders will have to complete the assessment. The duration will apply from the moment each leader begins the activity. For example, if set to 5 minutes, all leaders will have 5 minutes from the moment each of them start the activity.
-label.monitoring.summary.time.limit.absolute = Duration for all groups
-label.monitoring.summary.time.limit.absolute.desc = Set the number of minutes to finish the activity for all groups. This duration applies to all groups regardless when each of them starts the activity. Set the minutes and click Start for the time to apply.
-label.monitoring.summary.time.limit.individual = Individual extensions
-label.monitoring.summary.time.limit.individual.desc = Apply duration extensions only for certain groups. Search the group and then apply extra time.
-label.monitoring.summary.time.limit.minutes = minutes
-label.monitoring.summary.time.limit.enabled = Enabled
-label.monitoring.summary.time.limit.disabled = Disabled
-label.monitoring.summary.time.limit.start = Start
-label.monitoring.summary.time.limit.cancel = Cancel
-label.monitoring.summary.time.limit.plus.minute.1 = Plus 1 minute
-label.monitoring.summary.time.limit.plus.minute.5 = Plus 5 minutes
-label.monitoring.summary.time.limit.minus.minute.1 = Minus 1 minute
-label.monitoring.summary.time.limit.minus.minute.5 = Minus 5 minutes
-label.monitoring.summary.time.limit.finish.now = Finish now
-label.monitoring.summary.time.limit.finish.now.confirm = Are you sure you want to make all groups finish their work right now?
-label.monitoring.summary.time.limit.individual.placeholder = Type name
-label.monitoring.summary.time.limit.expired = Expired
label.monitoring.discussion.start = Start discussion sentiment
label.authoring.advanced.discussion = Enable discussion sentiment voting
label.authoring.advanced.discussion.tooltip = When enabled, in TBL monitoring, teachers are able to start instant polls for each burning question to assess the students' understanding.
Index: lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/controller/MonitoringController.java
===================================================================
diff -u -r53b1f5c6dcfb9e0d74e56c9647da69f07b889a55 -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/controller/MonitoringController.java (.../MonitoringController.java) (revision 53b1f5c6dcfb9e0d74e56c9647da69f07b889a55)
+++ lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/controller/MonitoringController.java (.../MonitoringController.java) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -328,9 +328,9 @@
scratchieService.saveOrUpdateScratchie(scratchie);
}
- @RequestMapping(path = "/getPossibleIndividualTimeLimitUsers", method = RequestMethod.GET)
+ @RequestMapping(path = "/getPossibleIndividualTimeLimits", method = RequestMethod.GET)
@ResponseBody
- public String getPossibleIndividualTimeLimitUsers(
+ public String getPossibleIndividualTimeLimits(
@RequestParam(name = AttributeNames.PARAM_TOOL_CONTENT_ID) long toolContentId,
@RequestParam(name = "term") String searchString) {
@@ -347,9 +347,9 @@
return responseJSON.toString();
}
- @RequestMapping(path = "/getExistingIndividualTimeLimitUsers", method = RequestMethod.GET)
+ @RequestMapping(path = "/getExistingIndividualTimeLimits", method = RequestMethod.GET)
@ResponseBody
- public String getExistingIndividualTimeLimitUsers(
+ public String getExistingIndividualTimeLimits(
@RequestParam(name = AttributeNames.PARAM_TOOL_CONTENT_ID) long toolContentId) {
String groupLabel = scratchieService.getMessage("monitoring.label.group") + " \"";
Index: lams_tool_scratchie/web/WEB-INF/jboss-web.xml
===================================================================
diff -u
--- lams_tool_scratchie/web/WEB-INF/jboss-web.xml (revision 0)
+++ lams_tool_scratchie/web/WEB-INF/jboss-web.xml (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -0,0 +1,6 @@
+
+ false
+
\ No newline at end of file
Index: lams_tool_scratchie/web/pages/monitoring/monitoring.jsp
===================================================================
diff -u -r01914e84eaec252cea509f1990122a58b555cbd5 -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_scratchie/web/pages/monitoring/monitoring.jsp (.../monitoring.jsp) (revision 01914e84eaec252cea509f1990122a58b555cbd5)
+++ lams_tool_scratchie/web/pages/monitoring/monitoring.jsp (.../monitoring.jsp) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -19,6 +19,8 @@
+
+
Fisheye: Tag 5563dc18a8b8d19478fb804c8beef31e63bd249b refers to a dead (removed) revision in file `lams_tool_scratchie/web/pages/monitoring/parts/timeLimit.jsp'.
Fisheye: No comparison available. Pass `N' to diff?
Index: lams_tool_scratchie/web/pages/monitoring/studentChoices.jsp
===================================================================
diff -u -reff233243475ad0693dd5bf2c3b441712bd0d4db -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_scratchie/web/pages/monitoring/studentChoices.jsp (.../studentChoices.jsp) (revision eff233243475ad0693dd5bf2c3b441712bd0d4db)
+++ lams_tool_scratchie/web/pages/monitoring/studentChoices.jsp (.../studentChoices.jsp) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -376,5 +376,11 @@
- <%@ include file="parts/timeLimit.jsp"%>
+
+
+
+
+
+
+
\ No newline at end of file
Index: lams_tool_scratchie/web/pages/monitoring/summary.jsp
===================================================================
diff -u -r6f0f844e82f555e8dc0df6916226fac35a2a7c36 -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_scratchie/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision 6f0f844e82f555e8dc0df6916226fac35a2a7c36)
+++ lams_tool_scratchie/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -485,7 +485,13 @@
<%@ include file="parts/advanceOptions.jsp"%>
-<%@ include file="parts/timeLimit.jsp"%>
+
+
+
+
+
+
+
<%@ include file="parts/dateRestriction.jsp"%>
Index: lams_tool_whiteboard/conf/language/lams/ApplicationResources.properties
===================================================================
diff -u -r3a2ed651885ed9e57c3c52799111d059e1cf93a3 -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_whiteboard/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 3a2ed651885ed9e57c3c52799111d059e1cf93a3)
+++ lams_tool_whiteboard/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -111,28 +111,8 @@
label.authoring.basic.instructions.tooltip = If you want the students to have a template document to guide them on their collaborative response, add your template here.
label.authoring.basic.description.tooltip = Description or case to be presented to students.
label.attendance = Attendance
-label.monitoring.summary.time.limit.individual.placeholder = Type name
-label.monitoring.summary.time.limit.finish.now.confirm = Are you sure you want to make all learners finish their work right now?
-label.monitoring.summary.time.limit.finish.now = Finish now
-label.monitoring.summary.time.limit.minus.minute.5 = Minus 5 minutes
-label.monitoring.summary.time.limit.minus.minute.1 = Minus 1 minute
-label.monitoring.summary.time.limit.plus.minute.5 = Plus 5 minutes
-label.monitoring.summary.time.limit.plus.minute.1 = Plus 1 minute
-label.monitoring.summary.time.limit.cancel = Cancel
-label.monitoring.summary.time.limit.start = Start
-label.monitoring.summary.time.limit.disabled = Disabled
-label.monitoring.summary.time.limit.enabled = Enabled
-label.monitoring.summary.time.limit.minutes = minutes
-label.monitoring.summary.time.limit.individual.desc = Apply duration extensions for individual learners. Search the learner and then apply extra time.
-label.monitoring.summary.time.limit.individual = Individual extensions
-label.monitoring.summary.time.limit.absolute.desc = Set the number of minutes to finish the assessment for all learners. This duration applies to all learners regardless when each of them starts the assessment. Set the minutes and click Start for the time to apply.
-label.monitoring.summary.time.limit.absolute = Duration for all learners
-label.monitoring.summary.time.limit.relative.desc = Set the duration in minutes that the learners will have to have to complete the assessment. The duration will apply from the moment each learner begins the assessment. For example, if set to 5 minutes, all learners will have 5 minutes from the moment each of them start the assessment.
-label.monitoring.summary.time.limit.relative = Duration relative to from student start
-label.monitoring.summary.time.limit = Timing limits
label.time.limit.tooltip = Number of minutes that each student will get from the moment they enter this activity. Leave it at 0 for no time restrictions.
label.monitoring.learner.marks.name = Name
-label.monitoring.summary.time.limit.expired = Expired
admin.whiteboard.url = Whiteboard server URL (use [LAMS_SERVER_URL] to mimic LAMS URL without its port)
admin.access.token = Whiteboard access token
label.comment.textarea.tip = Type your comment here then click on the green tick
Index: lams_tool_whiteboard/conf/language/lams/ApplicationResources_en_AU.properties
===================================================================
diff -u -r3a2ed651885ed9e57c3c52799111d059e1cf93a3 -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_whiteboard/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision 3a2ed651885ed9e57c3c52799111d059e1cf93a3)
+++ lams_tool_whiteboard/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -111,28 +111,8 @@
label.authoring.basic.instructions.tooltip = If you want the students to have a template document to guide them on their collaborative response, add your template here.
label.authoring.basic.description.tooltip = Description or case to be presented to students.
label.attendance = Attendance
-label.monitoring.summary.time.limit.individual.placeholder = Type name
-label.monitoring.summary.time.limit.finish.now.confirm = Are you sure you want to make all learners finish their work right now?
-label.monitoring.summary.time.limit.finish.now = Finish now
-label.monitoring.summary.time.limit.minus.minute.5 = Minus 5 minutes
-label.monitoring.summary.time.limit.minus.minute.1 = Minus 1 minute
-label.monitoring.summary.time.limit.plus.minute.5 = Plus 5 minutes
-label.monitoring.summary.time.limit.plus.minute.1 = Plus 1 minute
-label.monitoring.summary.time.limit.cancel = Cancel
-label.monitoring.summary.time.limit.start = Start
-label.monitoring.summary.time.limit.disabled = Disabled
-label.monitoring.summary.time.limit.enabled = Enabled
-label.monitoring.summary.time.limit.minutes = minutes
-label.monitoring.summary.time.limit.individual.desc = Apply duration extensions for individual learners. Search the learner and then apply extra time.
-label.monitoring.summary.time.limit.individual = Individual extensions
-label.monitoring.summary.time.limit.absolute.desc = Set the number of minutes to finish the assessment for all learners. This duration applies to all learners regardless when each of them starts the assessment. Set the minutes and click Start for the time to apply.
-label.monitoring.summary.time.limit.absolute = Duration for all learners
-label.monitoring.summary.time.limit.relative.desc = Set the duration in minutes that the learners will have to have to complete the assessment. The duration will apply from the moment each learner begins the assessment. For example, if set to 5 minutes, all learners will have 5 minutes from the moment each of them start the assessment.
-label.monitoring.summary.time.limit.relative = Duration relative to from student start
-label.monitoring.summary.time.limit = Timing limits
label.time.limit.tooltip = Number of minutes that each student will get from the moment they enter this activity. Leave it at 0 for no time restrictions.
label.monitoring.learner.marks.name = Name
-label.monitoring.summary.time.limit.expired = Expired
admin.whiteboard.url = Whiteboard server URL (use [LAMS_SERVER_URL] to mimic LAMS URL without its port)
admin.access.token = Whiteboard access token
label.comment.textarea.tip = Type your comment here then click on the green tick
Index: lams_tool_whiteboard/src/java/org/lamsfoundation/lams/tool/whiteboard/web/controller/MonitoringController.java
===================================================================
diff -u -rfc1e0b9d9e66313d54b4f1fad291a8e9d0054767 -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_whiteboard/src/java/org/lamsfoundation/lams/tool/whiteboard/web/controller/MonitoringController.java (.../MonitoringController.java) (revision fc1e0b9d9e66313d54b4f1fad291a8e9d0054767)
+++ lams_tool_whiteboard/src/java/org/lamsfoundation/lams/tool/whiteboard/web/controller/MonitoringController.java (.../MonitoringController.java) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -307,9 +307,9 @@
whiteboardService.saveOrUpdate(whiteboard);
}
- @RequestMapping(path = "/getPossibleIndividualTimeLimitUsers", method = RequestMethod.GET)
+ @RequestMapping(path = "/getPossibleIndividualTimeLimits", method = RequestMethod.GET)
@ResponseBody
- public String getPossibleIndividualTimeLimitUsers(
+ public String getPossibleIndividualTimeLimits(
@RequestParam(name = AttributeNames.PARAM_TOOL_CONTENT_ID) long toolContentId,
@RequestParam(name = "term") String searchString) {
Whiteboard whiteboard = whiteboardService.getWhiteboardByContentId(toolContentId);
@@ -323,7 +323,7 @@
if (grouping != null) {
Set groups = grouping.getGroups();
for (Group group : groups) {
- if (!group.getUsers().isEmpty() && group.getGroupName().contains(searchString.toLowerCase())) {
+ if (!group.getUsers().isEmpty() && group.getGroupName().toLowerCase().contains(searchString.toLowerCase())) {
ObjectNode groupJSON = JsonNodeFactory.instance.objectNode();
groupJSON.put("label", groupLabel + group.getGroupName() + "\"");
groupJSON.put("value", "group-" + group.getGroupId());
@@ -341,7 +341,7 @@
String name = user.getFirstName() + " " + user.getLastName() + " (" + user.getLogin() + ")";
if (grouping != null) {
Group group = grouping.getGroupBy(user);
- if (group != null) {
+ if (group != null && !group.isNull()) {
name += " - " + group.getGroupName();
}
}
@@ -353,9 +353,9 @@
return responseJSON.toString();
}
- @RequestMapping(path = "/getExistingIndividualTimeLimitUsers", method = RequestMethod.GET)
+ @RequestMapping(path = "/getExistingIndividualTimeLimits", method = RequestMethod.GET)
@ResponseBody
- public String getExistingIndividualTimeLimitUsers(
+ public String getExistingIndividualTimeLimits(
@RequestParam(name = AttributeNames.PARAM_TOOL_CONTENT_ID) long toolContentId) {
Whiteboard whiteboard = whiteboardService.getWhiteboardByContentId(toolContentId);
Map timeLimitAdjustments = whiteboard.getTimeLimitAdjustments();
Index: lams_tool_whiteboard/web/WEB-INF/jboss-web.xml
===================================================================
diff -u
--- lams_tool_whiteboard/web/WEB-INF/jboss-web.xml (revision 0)
+++ lams_tool_whiteboard/web/WEB-INF/jboss-web.xml (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -0,0 +1,6 @@
+
+ false
+
\ No newline at end of file
Index: lams_tool_whiteboard/web/pages/monitoring/summary.jsp
===================================================================
diff -u -r7f347e0f6edf4c758af5b37f52bf67eb23405c78 -r5563dc18a8b8d19478fb804c8beef31e63bd249b
--- lams_tool_whiteboard/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision 7f347e0f6edf4c758af5b37f52bf67eb23405c78)
+++ lams_tool_whiteboard/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision 5563dc18a8b8d19478fb804c8beef31e63bd249b)
@@ -442,334 +442,6 @@
}
}
-
-
- // TIME LIMIT
- // in minutes since learner entered the activity
- var relativeTimeLimit = ${whiteboard.relativeTimeLimit},
- // in seconds since epoch started
- absoluteTimeLimit = ${empty whiteboard.absoluteTimeLimit ? 'null' : whiteboard.absoluteTimeLimitSeconds};
-
- function updateTimeLimit(type, toggle, adjust) {
- // relavite time limit set
- if (type == 'relative') {
- // what is set at the moment on screen, not at server
- var displayedRelativeTimeLimit = +$('#relative-time-limit-value').text();
-
- // start/stop
- if (toggle !== null) {
-
- if (toggle === false) {
- // stop, i.e. set time limit to 0
- relativeTimeLimit = 0;
- updateTimeLimitOnServer();
- return;
- }
-
- // start, i.e. set backend time limit to whatever is set on screen
- if (toggle === true && displayedRelativeTimeLimit > 0) {
- relativeTimeLimit = displayedRelativeTimeLimit;
- // when teacher enables relative time limit, absolute one gets disabled
- absoluteTimeLimit = null;
- updateTimeLimitOnServer();
- }
- return;
- }
-
- // no negative time limit is allowed
- if (displayedRelativeTimeLimit == 0 && adjust < 0) {
- return;
- }
-
- var adjustedRelativeTimeLimit = displayedRelativeTimeLimit + adjust;
- // at least one minute is required
- // if teacher wants to set less, he should disable the limit or click "finish now"
- if (adjustedRelativeTimeLimit < 1) {
- adjustedRelativeTimeLimit = 1;
- }
-
- // is time limit already enforced? if so, update the server
- if (relativeTimeLimit > 0) {
- relativeTimeLimit = adjustedRelativeTimeLimit;
- updateTimeLimitOnServer();
- return;
- }
-
- // if time limit is not enforced yet, just update the screen
- displayedRelativeTimeLimit = adjustedRelativeTimeLimit;
- $('#relative-time-limit-value').text(displayedRelativeTimeLimit);
- $('#relative-time-limit-start').prop('disabled', false);
- return;
- }
-
- if (type == 'absolute') {
- // get existing value on counter, if it is set already
- var counter = $('#absolute-time-limit-counter'),
- secondsLeft = null;
- if (counter.length === 1) {
- var periods = counter.countdown('getTimes');
- secondsLeft = $.countdown.periodsToSeconds(periods);
- }
-
- if (toggle !== null) {
-
- // start/stop
- if (toggle === false) {
- absoluteTimeLimit = null;
- updateAbsoluteTimeLimitCounter();
- return;
- }
-
- // turn on the time limit, if there is any value on counter set already
- if (toggle === true && secondsLeft) {
- updateAbsoluteTimeLimitCounter(secondsLeft, true);
- return;
- }
-
- if (toggle === 'stop') {
- absoluteTimeLimit = Math.round(new Date().getTime() / 1000);
- updateAbsoluteTimeLimitCounter();
- }
- return;
- }
-
- // counter is not set yet and user clicked negative value
- if (!secondsLeft && adjust < 0) {
- return;
- }
-
- // adjust time
- secondsLeft += adjust * 60;
- if (secondsLeft < 60) {
- secondsLeft = 60;
- }
-
- // is time limit already enforced, update the server
- // if time limit is not enforced yet, just update the screen
- updateAbsoluteTimeLimitCounter(secondsLeft);
- $('#absolute-time-limit-start').prop('disabled', false);
- return;
- }
-
- if (type == 'individual') {
- // this method is called with updateTimeLimit.call() so we can change meaning of "this"
- // and identify row and userUid
- var button = $(this),
- row = button.closest('.individual-time-limit-row'),
- userId = row.data('userId');
-
- // disable individual time adjustment
- if (toggle === false) {
- updateIndividualTimeLimitOnServer('user-' + userId);
- return;
- }
- var existingAdjustment = +$('.individual-time-limit-value', row).text(),
- newAdjustment = existingAdjustment + adjust;
-
- updateIndividualTimeLimitOnServer('user-' + userId, newAdjustment);
- return;
- }
- }
-
- function updateTimeLimitOnServer() {
-
- // absolute time limit has higher priority
- if (absoluteTimeLimit != null) {
- relativeTimeLimit = 0;
- }
-
- $.ajax({
- 'url' : '',
- 'type': 'post',
- 'cache' : 'false',
- 'data': {
- 'toolContentID' : '${sessionMap.toolContentID}',
- 'relativeTimeLimit' : relativeTimeLimit,
- 'absoluteTimeLimit' : absoluteTimeLimit,
- '' : ''
- },
- success : function(){
- // update widgets
- $('#relative-time-limit-value').text(relativeTimeLimit);
-
- if (relativeTimeLimit > 0) {
- $('#relative-time-limit-disabled').addClass('hidden');
- $('#relative-time-limit-cancel').removeClass('hidden');
- $('#relative-time-limit-enabled').removeClass('hidden');
- $('#relative-time-limit-start').addClass('hidden');
- } else {
- $('#relative-time-limit-disabled').removeClass('hidden');
- $('#relative-time-limit-cancel').addClass('hidden');
- $('#relative-time-limit-enabled').addClass('hidden');
- $('#relative-time-limit-start').removeClass('hidden').prop('disabled', true);
- }
-
- if (absoluteTimeLimit === null) {
- // no absolute time limit? destroy the counter
- $('#absolute-time-limit-counter').countdown('destroy');
- $('#absolute-time-limit-value').empty();
-
- $('#absolute-time-limit-disabled').removeClass('hidden');
- $('#absolute-time-limit-cancel').addClass('hidden');
- $('#absolute-time-limit-enabled').addClass('hidden');
- $('#absolute-time-limit-start').removeClass('hidden').prop('disabled', true);
- $('#absolute-time-limit-finish-now').prop('disabled', false);
- } else {
- $('#absolute-time-limit-disabled').addClass('hidden');
- $('#absolute-time-limit-cancel').removeClass('hidden');
- $('#absolute-time-limit-enabled').removeClass('hidden');
- $('#absolute-time-limit-start').addClass('hidden');
- $('#absolute-time-limit-finish-now').prop('disabled', absoluteTimeLimit <= Math.round(new Date().getTime() / 1000));
- }
- }
- });
- }
-
- function updateAbsoluteTimeLimitCounter(secondsLeft, start) {
- var now = Math.round(new Date().getTime() / 1000),
- // preset means that counter is set just on screen and the time limit is not enforced for learners
- preset = start !== true && absoluteTimeLimit == null;
-
- if (secondsLeft) {
- if (!preset) {
- // time limit is already enforced on server, so update it there now
- absoluteTimeLimit = now + secondsLeft;
- updateTimeLimitOnServer();
- }
- } else {
- if (absoluteTimeLimit == null) {
- // disable the counter
- updateTimeLimitOnServer();
- return;
- }
- // counter initialisation on page load or "finish now"
- secondsLeft = absoluteTimeLimit - now;
- if (secondsLeft <= 0) {
- // finish now
- updateTimeLimitOnServer();
- }
- }
-
- var counter = $('#absolute-time-limit-counter');
-
- if (counter.length == 0) {
- counter = $('').attr('id', 'absolute-time-limit-counter').appendTo('#absolute-time-limit-value')
- .countdown({
- until: '+' + secondsLeft +'S',
- format: 'hMS',
- compact: true,
- alwaysExpire : true,
- onTick: function(periods) {
- // check for 30 seconds or less and display timer in red
- var secondsLeft = $.countdown.periodsToSeconds(periods);
- if (secondsLeft <= 30) {
- counter.addClass('countdown-timeout');
- } else {
- counter.removeClass('countdown-timeout');
- }
- },
- expiryText : ''
- });
- } else {
- // if counter is paused, we can not adjust time, so resume it for a moment
- counter.countdown('resume');
- counter.countdown('option', 'until', secondsLeft + 'S');
- }
-
- if (preset) {
- counter.countdown('pause');
- $('#absolute-time-limit-start').removeClass('disabled');
- } else {
- counter.countdown('resume');
- }
- }
-
- function timeLimitFinishNow(){
- if (confirm('')) {
- updateTimeLimit('absolute', 'stop');
- }
- }
-
-
- function initInidividualTimeLimitAutocomplete(){
- $('#individual-time-limit-autocomplete').autocomplete({
- 'source' : '?toolContentID=${sessionMap.toolContentID}',
- 'delay' : 700,
- 'minLength' : 3,
- 'select' : function(event, ui){
- // user ID or group ID, and default 0 adjustment
- updateIndividualTimeLimitOnServer(ui.item.value, 0);
-
- // clear search field
- $(this).val('');
- return false;
- },
- 'focus': function() {
- // Stop the autocomplete of resetting the value to the selected one
- // It puts LAMS user ID instead of user name
- event.preventDefault();
- }
- });
-
- refreshInidividualTimeLimitUsers();
- }
-
-
- function updateIndividualTimeLimitOnServer(itemId, adjustment) {
- $.ajax({
- 'url' : '',
- 'type': 'post',
- 'cache' : 'false',
- 'data': {
- 'toolContentID' : '${sessionMap.toolContentID}',
- // itemId can user- or group-
- 'itemId' : itemId,
- 'adjustment' : adjustment,
- '' : ''
- },
- success : function(){
- refreshInidividualTimeLimitUsers();
- }
- });
- }
-
-
- function refreshInidividualTimeLimitUsers() {
- var table = $('#time-limit-table');
-
- $.ajax({
- 'url' : '',
- 'dataType' : 'json',
- 'cache' : 'false',
- 'data': {
- 'toolContentID' : '${sessionMap.toolContentID}'
- },
- success : function(users) {
- // remove existing users
- $('.individual-time-limit-row', table).remove();
-
- if (!users) {
- return;
- }
-
- var template = $('#individual-time-limit-template-row'),
- now = new Date().getTime();
- $.each(users, function(){
- var row = template.clone()
- .attr('id', 'individual-time-limit-row-' + this.userId)
- .data('userId', this.userId)
- .addClass('individual-time-limit-row')
- .appendTo(table);
- $('.individual-time-limit-user-name', row).text(this.name);
- $('.individual-time-limit-value', row).text(this.adjustment);
-
- row.removeClass('hidden');
- });
- }
- });
- }
-
- // END OF TIME LIMIT
@@ -973,7 +645,13 @@
<%@ include file="advanceoptions.jsp"%>
- <%@ include file="timeLimit.jsp"%>
+
+
+
+
+
+
+
\ No newline at end of file
Fisheye: Tag 5563dc18a8b8d19478fb804c8beef31e63bd249b refers to a dead (removed) revision in file `lams_tool_whiteboard/web/pages/monitoring/timeLimit.jsp'.
Fisheye: No comparison available. Pass `N' to diff?