Index: lams_admin/web/WEB-INF/tags/OutcomeAuthor.tag =================================================================== diff -u -r7584e0047537ac0e15b56eb9829b035e02b458d7 -rdd8758e2e6d773e610086c90370c6e25e925de34 --- lams_admin/web/WEB-INF/tags/OutcomeAuthor.tag (.../OutcomeAuthor.tag) (revision 7584e0047537ac0e15b56eb9829b035e02b458d7) +++ lams_admin/web/WEB-INF/tags/OutcomeAuthor.tag (.../OutcomeAuthor.tag) (revision dd8758e2e6d773e610086c90370c6e25e925de34) @@ -46,9 +46,12 @@ }, // keep mapped outcome IDs for search result filtering outcomeMappingIds${outcomeTagId} = [], + outcomeAddEnabled = true, outcomeExistingNoneLabel = '', - outcomeMappingRemoveButton = ''; + outcomeCreateNewLabel = '', + outcomeMappingRemoveButton = '', + outcomeMappingRemoveConfirm = ''; $(document).ready(function(){ $('#outcomeSearchInput${outcomeTagId}').autocomplete({ @@ -57,19 +60,40 @@ 'minLength' : 2, 'response' : function(event, ui) { // filter out already mapped outcomes - var index = ui.content.length; + var index = ui.content.length - 1, + // if result is empty, term and outcome add enabled come as objects (label, value) + // if there are results, they come as simple values + outcomeAddEnabled = ui.content[index] instanceof Object ? ui.content[index].label : ui.content[index], + // convert to boolean + outcomeAddEnabled = outcomeAddEnabled == 'true', + term = ui.content[index - 1] instanceof Object ? ui.content[index - 1].label : ui.content[index - 1], + sameNameFound = false; + index--; + ui.content.splice(index, 2); while(index--) { + var label = ui.content[index].label; + if (label.split('(')[0].trim() == term) { + // do not offer to create an output which perfectly matches an existing one + sameNameFound = true; + } if (outcomeMappingIds${outcomeTagId}.includes(ui.content[index].value)){ ui.content.splice(index, 1); } } + if (outcomeAddEnabled && !sameNameFound) { + ui.content.push({ + 'label' : term + ' ' + outcomeCreateNewLabel + }); + } }, 'select' : function(event, ui){ var input = $(this); $.ajax({ 'url' : 'outcome/outcomeMap.do', 'data': $.extend({ - 'outcomeId' : ui.item.value + 'outcomeId' : ui.item.value, + // if value is null, then it is a new outcome to create; remove ' [create new]' part before sending + 'name' : ui.item.value ? null : ui.item.label.replace(outcomeCreateNewLabel, '') }, outcomeData${outcomeTagId}), 'method' : 'post', 'cache' : false, @@ -109,10 +133,12 @@ // cache already mapped outcomes outcomeMappingIds${outcomeTagId}.push(this.outcomeId); // add a label with outcome information - var outcomeButton = $('
- Index: lams_central/web/authoring/authoring.jsp =================================================================== diff -u -r70e6fe3062072e2c6188217c562a4f33f0838604 -rdd8758e2e6d773e610086c90370c6e25e925de34 --- lams_central/web/authoring/authoring.jsp (.../authoring.jsp) (revision 70e6fe3062072e2c6188217c562a4f33f0838604) +++ lams_central/web/authoring/authoring.jsp (.../authoring.jsp) (revision dd8758e2e6d773e610086c90370c6e25e925de34) @@ -736,7 +736,7 @@ - + @@ -746,7 +746,7 @@ - + @@ -818,15 +818,15 @@ - + - + - + @@ -911,15 +911,15 @@ - + - + @@ -963,15 +963,15 @@ - + - + @@ -1060,10 +1060,10 @@
- +
- - + +
- +
Index: lams_central/web/outcome/outcomeManage.jsp =================================================================== diff -u -rd432ad1e56c019311c8ca428ba8e08907a56077c -rdd8758e2e6d773e610086c90370c6e25e925de34 --- lams_central/web/outcome/outcomeManage.jsp (.../outcomeManage.jsp) (revision d432ad1e56c019311c8ca428ba8e08907a56077c) +++ lams_central/web/outcome/outcomeManage.jsp (.../outcomeManage.jsp) (revision dd8758e2e6d773e610086c90370c6e25e925de34) @@ -18,8 +18,7 @@ - + - -
@@ -61,22 +56,13 @@
- : - - - - - - - - -
-
Index: lams_central/web/outcome/scaleManage.jsp =================================================================== diff -u -rd432ad1e56c019311c8ca428ba8e08907a56077c -rdd8758e2e6d773e610086c90370c6e25e925de34 --- lams_central/web/outcome/scaleManage.jsp (.../scaleManage.jsp) (revision d432ad1e56c019311c8ca428ba8e08907a56077c) +++ lams_central/web/outcome/scaleManage.jsp (.../scaleManage.jsp) (revision dd8758e2e6d773e610086c90370c6e25e925de34) @@ -17,8 +17,7 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - + <%-- "loading..." screen, gets removed on page full load --%> @@ -568,6 +564,7 @@ + @@ -604,6 +601,7 @@ + @@ -660,6 +658,7 @@ +
Index: lams_monitoring/web/tblmonitor/teams.jsp =================================================================== diff -u -r7e71d3c117c81dda7bed5a8bfb1f3e01adc3c104 -rdd8758e2e6d773e610086c90370c6e25e925de34 --- lams_monitoring/web/tblmonitor/teams.jsp (.../teams.jsp) (revision 7e71d3c117c81dda7bed5a8bfb1f3e01adc3c104) +++ lams_monitoring/web/tblmonitor/teams.jsp (.../teams.jsp) (revision dd8758e2e6d773e610086c90370c6e25e925de34) @@ -3,6 +3,9 @@ .font-weight-bold { font-weight: bold; } + .group-title { + cursor: pointer; + } @@ -32,6 +35,13 @@ }); }); + //use jqeury toggle instead of bootstrap collapse + $(".group-title").on('click', function () { + var div = $("#collapse-" + $(this).data("groupid")); + div.toggleClass("in"); + $(this).toggleClass("collapsed"); + }); + //Comparison button modal window var chart; $('#comparison-modal').on('shown.bs.modal', function (event) { @@ -174,7 +184,7 @@

-

Index: lams_tool_assessment/web/WEB-INF/tags/OutcomeAuthor.tag =================================================================== diff -u -r7584e0047537ac0e15b56eb9829b035e02b458d7 -rdd8758e2e6d773e610086c90370c6e25e925de34 --- lams_tool_assessment/web/WEB-INF/tags/OutcomeAuthor.tag (.../OutcomeAuthor.tag) (revision 7584e0047537ac0e15b56eb9829b035e02b458d7) +++ lams_tool_assessment/web/WEB-INF/tags/OutcomeAuthor.tag (.../OutcomeAuthor.tag) (revision dd8758e2e6d773e610086c90370c6e25e925de34) @@ -46,9 +46,12 @@ }, // keep mapped outcome IDs for search result filtering outcomeMappingIds${outcomeTagId} = [], + outcomeAddEnabled = true, outcomeExistingNoneLabel = '', - outcomeMappingRemoveButton = ''; + outcomeCreateNewLabel = '', + outcomeMappingRemoveButton = '', + outcomeMappingRemoveConfirm = ''; $(document).ready(function(){ $('#outcomeSearchInput${outcomeTagId}').autocomplete({ @@ -57,19 +60,40 @@ 'minLength' : 2, 'response' : function(event, ui) { // filter out already mapped outcomes - var index = ui.content.length; + var index = ui.content.length - 1, + // if result is empty, term and outcome add enabled come as objects (label, value) + // if there are results, they come as simple values + outcomeAddEnabled = ui.content[index] instanceof Object ? ui.content[index].label : ui.content[index], + // convert to boolean + outcomeAddEnabled = outcomeAddEnabled == 'true', + term = ui.content[index - 1] instanceof Object ? ui.content[index - 1].label : ui.content[index - 1], + sameNameFound = false; + index--; + ui.content.splice(index, 2); while(index--) { + var label = ui.content[index].label; + if (label.split('(')[0].trim() == term) { + // do not offer to create an output which perfectly matches an existing one + sameNameFound = true; + } if (outcomeMappingIds${outcomeTagId}.includes(ui.content[index].value)){ ui.content.splice(index, 1); } } + if (outcomeAddEnabled && !sameNameFound) { + ui.content.push({ + 'label' : term + ' ' + outcomeCreateNewLabel + }); + } }, 'select' : function(event, ui){ var input = $(this); $.ajax({ 'url' : 'outcome/outcomeMap.do', 'data': $.extend({ - 'outcomeId' : ui.item.value + 'outcomeId' : ui.item.value, + // if value is null, then it is a new outcome to create; remove ' [create new]' part before sending + 'name' : ui.item.value ? null : ui.item.label.replace(outcomeCreateNewLabel, '') }, outcomeData${outcomeTagId}), 'method' : 'post', 'cache' : false, @@ -109,10 +133,12 @@ // cache already mapped outcomes outcomeMappingIds${outcomeTagId}.push(this.outcomeId); // add a label with outcome information - var outcomeButton = $('
Index: lams_tool_assessment/web/pages/monitoring/parts/questionsummary.jsp =================================================================== diff -u -r7584e0047537ac0e15b56eb9829b035e02b458d7 -rdd8758e2e6d773e610086c90370c6e25e925de34 --- lams_tool_assessment/web/pages/monitoring/parts/questionsummary.jsp (.../questionsummary.jsp) (revision 7584e0047537ac0e15b56eb9829b035e02b458d7) +++ lams_tool_assessment/web/pages/monitoring/parts/questionsummary.jsp (.../questionsummary.jsp) (revision dd8758e2e6d773e610086c90370c6e25e925de34) @@ -10,12 +10,10 @@ - + - - - + - + - - Index: lams_tool_lamc/web/authoring/itemlist.jsp =================================================================== diff -u -ra9f5e7f17f2c4ca78ee68eb398817a79735c148f -rdd8758e2e6d773e610086c90370c6e25e925de34 --- lams_tool_lamc/web/authoring/itemlist.jsp (.../itemlist.jsp) (revision a9f5e7f17f2c4ca78ee68eb398817a79735c148f) +++ lams_tool_lamc/web/authoring/itemlist.jsp (.../itemlist.jsp) (revision dd8758e2e6d773e610086c90370c6e25e925de34) @@ -1,6 +1,7 @@ <%@ include file="/common/taglibs.jsp"%> +
@@ -9,9 +10,11 @@
- - - + + + + + @@ -82,9 +85,11 @@ -
+ + + Index: lams_tool_lamc/web/common/monitoringheader.jsp =================================================================== diff -u -r70e6fe3062072e2c6188217c562a4f33f0838604 -rdd8758e2e6d773e610086c90370c6e25e925de34 --- lams_tool_lamc/web/common/monitoringheader.jsp (.../monitoringheader.jsp) (revision 70e6fe3062072e2c6188217c562a4f33f0838604) +++ lams_tool_lamc/web/common/monitoringheader.jsp (.../monitoringheader.jsp) (revision dd8758e2e6d773e610086c90370c6e25e925de34) @@ -15,8 +15,6 @@ - - Index: lams_tool_lamc/web/monitoring/SummaryContent.jsp =================================================================== diff -u -ra9f5e7f17f2c4ca78ee68eb398817a79735c148f -rdd8758e2e6d773e610086c90370c6e25e925de34 --- lams_tool_lamc/web/monitoring/SummaryContent.jsp (.../SummaryContent.jsp) (revision a9f5e7f17f2c4ca78ee68eb398817a79735c148f) +++ lams_tool_lamc/web/monitoring/SummaryContent.jsp (.../SummaryContent.jsp) (revision dd8758e2e6d773e610086c90370c6e25e925de34) @@ -3,23 +3,8 @@ - + - +
@@ -216,23 +203,14 @@
-
-<%@ include file="parts/advanceQuestions.jsp"%> - - - -

- -

- -
- <%@ include file="masterDetailLoadUp.jsp"%> +
+
@@ -257,8 +235,8 @@
- - disabled="disabled"> Index: lams_tool_assessment/web/pages/learning/parts/multiplechoice.jsp =================================================================== diff -u -ra9f5e7f17f2c4ca78ee68eb398817a79735c148f -rdd8758e2e6d773e610086c90370c6e25e925de34 --- lams_tool_assessment/web/pages/learning/parts/multiplechoice.jsp (.../multiplechoice.jsp) (revision a9f5e7f17f2c4ca78ee68eb398817a79735c148f) +++ lams_tool_assessment/web/pages/learning/parts/multiplechoice.jsp (.../multiplechoice.jsp) (revision dd8758e2e6d773e610086c90370c6e25e925de34) @@ -18,13 +18,13 @@ - checked="checked" disabled="disabled" /> - checked="checked" disabled="disabled" /> Index: lams_tool_assessment/web/pages/learning/parts/ordering.jsp =================================================================== diff -u -rc8cf9027d03f39a61d2516ece7f158ffc8cc2001 -rdd8758e2e6d773e610086c90370c6e25e925de34 --- lams_tool_assessment/web/pages/learning/parts/ordering.jsp (.../ordering.jsp) (revision c8cf9027d03f39a61d2516ece7f158ffc8cc2001) +++ lams_tool_assessment/web/pages/learning/parts/ordering.jsp (.../ordering.jsp) (revision dd8758e2e6d773e610086c90370c6e25e925de34) @@ -10,7 +10,7 @@
- +
- " onclick="removeQuestion(${queIndex});"> - + " onclick="removeQuestion(${queIndex});"> +
-
-
+
+
@@ -275,9 +253,14 @@ +
+ <%@ include file="masterDetailLoadUp.jsp"%> +
+ +<%@ include file="parts/advanceQuestions.jsp"%> <%@ include file="parts/advanceOptions.jsp"%> <%@ include file="parts/dateRestriction.jsp"%> Index: lams_tool_laqa/web/WEB-INF/tags/OutcomeAuthor.tag =================================================================== diff -u -r7584e0047537ac0e15b56eb9829b035e02b458d7 -rdd8758e2e6d773e610086c90370c6e25e925de34 --- lams_tool_laqa/web/WEB-INF/tags/OutcomeAuthor.tag (.../OutcomeAuthor.tag) (revision 7584e0047537ac0e15b56eb9829b035e02b458d7) +++ lams_tool_laqa/web/WEB-INF/tags/OutcomeAuthor.tag (.../OutcomeAuthor.tag) (revision dd8758e2e6d773e610086c90370c6e25e925de34) @@ -46,9 +46,12 @@ }, // keep mapped outcome IDs for search result filtering outcomeMappingIds${outcomeTagId} = [], + outcomeAddEnabled = true, outcomeExistingNoneLabel = '', - outcomeMappingRemoveButton = ''; + outcomeCreateNewLabel = '', + outcomeMappingRemoveButton = '', + outcomeMappingRemoveConfirm = ''; $(document).ready(function(){ $('#outcomeSearchInput${outcomeTagId}').autocomplete({ @@ -57,19 +60,40 @@ 'minLength' : 2, 'response' : function(event, ui) { // filter out already mapped outcomes - var index = ui.content.length; + var index = ui.content.length - 1, + // if result is empty, term and outcome add enabled come as objects (label, value) + // if there are results, they come as simple values + outcomeAddEnabled = ui.content[index] instanceof Object ? ui.content[index].label : ui.content[index], + // convert to boolean + outcomeAddEnabled = outcomeAddEnabled == 'true', + term = ui.content[index - 1] instanceof Object ? ui.content[index - 1].label : ui.content[index - 1], + sameNameFound = false; + index--; + ui.content.splice(index, 2); while(index--) { + var label = ui.content[index].label; + if (label.split('(')[0].trim() == term) { + // do not offer to create an output which perfectly matches an existing one + sameNameFound = true; + } if (outcomeMappingIds${outcomeTagId}.includes(ui.content[index].value)){ ui.content.splice(index, 1); } } + if (outcomeAddEnabled && !sameNameFound) { + ui.content.push({ + 'label' : term + ' ' + outcomeCreateNewLabel + }); + } }, 'select' : function(event, ui){ var input = $(this); $.ajax({ 'url' : 'outcome/outcomeMap.do', 'data': $.extend({ - 'outcomeId' : ui.item.value + 'outcomeId' : ui.item.value, + // if value is null, then it is a new outcome to create; remove ' [create new]' part before sending + 'name' : ui.item.value ? null : ui.item.label.replace(outcomeCreateNewLabel, '') }, outcomeData${outcomeTagId}), 'method' : 'post', 'cache' : false, @@ -109,10 +133,12 @@ // cache already mapped outcomes outcomeMappingIds${outcomeTagId}.push(this.outcomeId); // add a label with outcome information - var outcomeButton = $(' +

@@ -11,7 +52,7 @@ -
+
@@ -21,49 +62,63 @@

+ + + + + + + + + Q${i.index+1}) + + + + - + + + ${burningQsCount} - Q${i.index+1}) + ${itemTitle} - - - - - ${burningQsCount} -

-
- - - - - - - - - - -
- - - ${burningQuestionDto.escapedBurningQuestion} - - ${burningQuestionDto.likeCount}   -
+ + + + + +
+ + + + + + + + + + +
+ + + ${burningQuestionDto.escapedBurningQuestion} + + ${burningQuestionDto.likeCount}   +
+
-
Index: lams_tool_scratchie/web/pages/tblmonitoring/tra.jsp =================================================================== diff -u -r70e6fe3062072e2c6188217c562a4f33f0838604 -rdd8758e2e6d773e610086c90370c6e25e925de34 --- lams_tool_scratchie/web/pages/tblmonitoring/tra.jsp (.../tra.jsp) (revision 70e6fe3062072e2c6188217c562a4f33f0838604) +++ lams_tool_scratchie/web/pages/tblmonitoring/tra.jsp (.../tra.jsp) (revision dd8758e2e6d773e610086c90370c6e25e925de34) @@ -1,4 +1,10 @@ <%@ include file="/common/taglibs.jsp"%> + @@ -115,7 +121,7 @@
- +
Index: lams_tool_scratchie/web/pages/tblmonitoring/traStudentChoices.jsp =================================================================== diff -u -ra9f5e7f17f2c4ca78ee68eb398817a79735c148f -rdd8758e2e6d773e610086c90370c6e25e925de34 --- lams_tool_scratchie/web/pages/tblmonitoring/traStudentChoices.jsp (.../traStudentChoices.jsp) (revision a9f5e7f17f2c4ca78ee68eb398817a79735c148f) +++ lams_tool_scratchie/web/pages/tblmonitoring/traStudentChoices.jsp (.../traStudentChoices.jsp) (revision dd8758e2e6d773e610086c90370c6e25e925de34) @@ -1,4 +1,10 @@ <%@ include file="/common/taglibs.jsp"%> + @@ -17,10 +17,9 @@ - - + Index: lams_tool_task/web/pages/monitoring/itemsummary.jsp =================================================================== diff -u -r70e6fe3062072e2c6188217c562a4f33f0838604 -rdd8758e2e6d773e610086c90370c6e25e925de34 --- lams_tool_task/web/pages/monitoring/itemsummary.jsp (.../itemsummary.jsp) (revision 70e6fe3062072e2c6188217c562a4f33f0838604) +++ lams_tool_task/web/pages/monitoring/itemsummary.jsp (.../itemsummary.jsp) (revision dd8758e2e6d773e610086c90370c6e25e925de34) @@ -9,30 +9,15 @@ <fmt:message key="label.learning.title" /> <%@ include file="/common/monitorheader.jsp"%> - - -