Index: lams_central/web/includes/javascript/bootstrap5.tabcontroller.js =================================================================== diff -u --- lams_central/web/includes/javascript/bootstrap5.tabcontroller.js (revision 0) +++ lams_central/web/includes/javascript/bootstrap5.tabcontroller.js (revision b31ac55045b51d2098eb4b66772e3d6e2a5a89b6) @@ -0,0 +1,19 @@ +function selectTab(tabID) { + const triggerFirstTabEl = document.querySelector('#tabs button#tab-' + tabID) + bootstrap.Tab.getInstance(triggerFirstTabEl).show() + + try { + //trigger the custom event listener onSelectTab() + onSelectTab(tabID); + } + catch (error) { + //catch reference error when onSelectTab() is not defined + } +} + +function getCurrentTabID() { + var activeTab = $("#tabs-content div.tab-pane.active"); + var id = activeTab.attr("id") // activated tab, should be "#t" + var activeTabID = id.substring(4,5); + return activeTabID; +} Index: lams_tool_daco/web/includes/css/daco.scss =================================================================== diff -u -r7475d08afc280b5e2e5ddf04e8bf35e3166aaf80 -rb31ac55045b51d2098eb4b66772e3d6e2a5a89b6 --- lams_tool_daco/web/includes/css/daco.scss (.../daco.scss) (revision 7475d08afc280b5e2e5ddf04e8bf35e3166aaf80) +++ lams_tool_daco/web/includes/css/daco.scss (.../daco.scss) (revision b31ac55045b51d2098eb4b66772e3d6e2a5a89b6) @@ -48,37 +48,33 @@ } // cells must have the same height, otherwise they will be incorrectly aligned in horizontal record list -table { - &#recordListTable td, &#horizontalListTable td { +#recordListTable .col, #horizontalListTable .col { padding-left: 5px; vertical-align: middle; padding-right: 5px; - } - &#recordListTable td { +} +#recordListTable .col { background-color: $gray-lightest; - &.fixedCellHeight { - height: 150px; - } } - &#horizontalListTable td.fixedCellHeight { +.fixedCellHeight { height: 150px; } - &#summaryTable table.alternative-color-inner-table { - // centers the table in the outer table column - margin: auto; - } - &#recordListTable { +#recordListTable { border-right: none !important; - tr, td { + .row, .col { border-right: none !important; } - } - &#summaryTable { - td.singleSummaryCell, th.singleSummaryCell { +} + +#summaryTable { + .singleSummaryCell { vertical-align: middle; text-align: center; } - } + .alternative-color-inner-table { + // centers the table in the outer table column + margin: auto; + } } border-thick { Index: lams_tool_daco/web/includes/javascript/dacoCommon.js =================================================================== diff -u -r7475d08afc280b5e2e5ddf04e8bf35e3166aaf80 -rb31ac55045b51d2098eb4b66772e3d6e2a5a89b6 --- lams_tool_daco/web/includes/javascript/dacoCommon.js (.../dacoCommon.js) (revision 7475d08afc280b5e2e5ddf04e8bf35e3166aaf80) +++ lams_tool_daco/web/includes/javascript/dacoCommon.js (.../dacoCommon.js) (revision b31ac55045b51d2098eb4b66772e3d6e2a5a89b6) @@ -23,10 +23,6 @@ function checkCheckbox(checkboxName){ var checkbox = document.getElementById(checkboxName); checkbox.checked=true; - } - function setValue(elementName,value){ - var element = document.getElementById(elementName); - element.value=value; } function resizeHorizontalRecordListFrame(elementIdPrefix,questionListLength){ Index: lams_tool_daco/web/includes/javascript/dacoLearning.js =================================================================== diff -u -r587db89bd8343613879909637e377091b88e6cf2 -rb31ac55045b51d2098eb4b66772e3d6e2a5a89b6 --- lams_tool_daco/web/includes/javascript/dacoLearning.js (.../dacoLearning.js) (revision 587db89bd8343613879909637e377091b88e6cf2) +++ lams_tool_daco/web/includes/javascript/dacoLearning.js (.../dacoLearning.js) (revision b31ac55045b51d2098eb4b66772e3d6e2a5a89b6) @@ -111,14 +111,18 @@ } function editRecord (sessionMapID, recordIndex){ - var param = {"sessionMapID":sessionMapID,"recordIndex":recordIndex,"reqID":((new Date()).getTime())}; + var param = { + "sessionMapID":sessionMapID, + "recordIndex":recordIndex, + "reqID":((new Date()).getTime()) + }; $( "#addRecordDiv" ).load( editRecordUrl, param, function() { readHiddenFormValues(); doSelectTab(1); - }); + }); } function clearVisibleFormElements (formName,protectedFormElementNames){ Index: lams_tool_daco/web/pages/learning/addRecord.jsp =================================================================== diff -u -rbc8213e12c4e5afddd0394ad66386ef3e70d1611 -rb31ac55045b51d2098eb4b66772e3d6e2a5a89b6 --- lams_tool_daco/web/pages/learning/addRecord.jsp (.../addRecord.jsp) (revision bc8213e12c4e5afddd0394ad66386ef3e70d1611) +++ lams_tool_daco/web/pages/learning/addRecord.jsp (.../addRecord.jsp) (revision b31ac55045b51d2098eb4b66772e3d6e2a5a89b6) @@ -1,10 +1,7 @@ <%@ include file="/common/taglibs.jsp"%> -
- - <%-- If the view is horizontal or vertical --%> @@ -13,323 +10,349 @@ -
- - - - - - - - - - - - +
+ + + + + + + + + + + + + + + <%-- The status of the last add/edit operation. --%> + + + + + + + + + + + + + + + + + + + +
+ + + +
+
- -<%-- The status of the last add/edit operation. --%> - - - - - - - - - - - -
- -
-
- - - - -
-
- - - ${displayedRecordNumber} - -
- - - -
- -
- - - -
-
-
- - - + - - - - - - - - - - - - - - - - -
- - - - <%-- The content varies depending on the question type --%> - <%-- Single line text --%> - - - - + +
+
+ + + + ${displayedRecordNumber} + +
+ + + + + + + + + +
+ +
+
+ - <%-- Textfield entry length is limited - depending on the maximum number of characters the teacher provided - --%> - - + + - + - - - - <%-- Multi-line text --%> - - -
- - - - - - <%-- Number --%> - - -
- <%-- An information for the learner is displayed, - if the number he provides will be rounded to the number of places after the decimal point, - as stated by the teacher. --%> - - - -
- - -
- - - - - - <%-- Date can be entered in three textfields --%> -
- -
- - -
- -   -
+ + + <%-- The content varies depending on the question type --%> + <%-- Single line text --%> + + +
+ + + + <%-- Textfield entry length is limited + depending on the maximum number of characters the teacher provided + --%> + + + + + + + + + -
- - -   -
+ <%-- Multi-line text --%> + + +
+ + + + -
- - - -
- - - - - <%-- File --%> -
- -
- - - - - - <%-- Image --%> -
- -
- - - - - - <%-- Radio buttons --%> -
- -
- -
- - - -
- <%-- It displays for example A) instead of 1) --%> - ${fn:substring(ordinal,status.index,status.index+1)}) - -
+ + + + + + <%-- Date can be entered in three textfields --%> +
+ +
+ + +
+ + + +
+ + +
+ +
+ + + +
+ +
+ + + +
+
+ + + + <%-- File --%> +
+ +
+ + +
+ + + + + + + <%-- Image --%> +
+ +
+ + +
+ + + + + + + <%-- Radio buttons --%> +
+ +
+ +
+ + +
+ + + + + +
+ + +
+
+
+ + + + + <%-- Dropdown menu --%> + -
-
-
- - - - - <%-- Dropdown menu --%> -
- -
- -
- - - - - - - - - - - - <%-- Checkboxes --%> -
- -
- -
- - - - -
- ${fn:substring(ordinal,status.index,status.index+1)}) - - -
-
-
- - - - - <%-- Longitude/latitude --%> -
- -
- -
- - -
-
- -
- + + +
+ + + + + + + + + + + + <%-- Checkboxes --%> +
+
-
-

-
-
- - -
- -
- + + +
+ + + + +
+ + +
+
+ + + + + <%-- Longitude/latitude --%> +
+
-
-

+ + +
+
+ + +
+
+ + +
+ +
+ +
+

+ +

+
+ +
+ + +
+ + +
+ +
+ +
+

+ +

+
+
-
+ + +
+
- - - - -
- - - - - - -
- - -
-
- -
- - - -
-
- +
+ +
+ + +
+ +
+
+ +
-
-
- -
-
- - - - - - - - -
+ + + + + + + - - - -
-
- - - + - +
- - - -<%-- To switch between the vertical/horizontal view --%> - - - - " - onclick="javascript:changeView('${sessionMapID}',${displayedRecordNumber})" id="ellipsis"> - - - " - onclick="javascript:changeView('${sessionMapID}',${displayedRecordNumber})" id="ellipsis"> - - - - -<%-- push mode into request so it is available in the tab pages --%> -${mode} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file + +
+ +
+
+
+ +
+ + +
+
+
+
+
+ + +
+ + + + + + + + + +
+
+ +
+ \ No newline at end of file Index: lams_tool_daco/web/pages/learning/listRecords.jsp =================================================================== diff -u -rbc8213e12c4e5afddd0394ad66386ef3e70d1611 -rb31ac55045b51d2098eb4b66772e3d6e2a5a89b6 --- lams_tool_daco/web/pages/learning/listRecords.jsp (.../listRecords.jsp) (revision bc8213e12c4e5afddd0394ad66386ef3e70d1611) +++ lams_tool_daco/web/pages/learning/listRecords.jsp (.../listRecords.jsp) (revision b31ac55045b51d2098eb4b66772e3d6e2a5a89b6) @@ -1,32 +1,14 @@ -<%@page import="org.lamsfoundation.lams.web.util.SessionMap"%> -
- <%@ include file="/common/taglibs.jsp"%> +<%@page import="org.lamsfoundation.lams.web.util.SessionMap"%> <%-- This page modifies its content depending on the page it was included from. --%> - - - - - - - - - - + + + - - - - + <%-- Whether to display the vertical or horizontal view. --%> - - <%-- Some elements are displayed differently depending on the browser. --%> - - - - <%-- This page can be included multiple times on a single master page. That is why element IDs need prefixes. --%> @@ -37,64 +19,60 @@ - <%-- In some cases record list is passed as an attribute, in other - in session map. --%> - -
-
- -
-
-
+ - - - - - - - - -

: ${fn:length(recordList)}

- +
+ + + + + + + + + + : ${fn:length(recordList)} + + - - -
+
+
- - +
- +
-
- - - - +
+
+
+
+ +
+
-
- - + + -
+
+
-
+
- + <%-- Link that displayes the horizontal record list --%> @@ -103,204 +81,200 @@ - -
+ +
-
-
- - - - - <%-- Vertical view displays records as separate tables of answers. --%> - - -
-
-  ${recordStatus.index+1} - - <%-- If the record can be edited, display these links. --%> - " - onclick="javascript:editRecord('${sessionMapID}',${recordStatus.index+1})"> - " - onclick="javascript:removeRecord('${sessionMapID}',${recordStatus.index+1})"> - +
- - - <%-- "Generated" means that the table for a long/lat question was already generated - and the current answer only needs to be filled in in the existing textfield. - --%> - - - - - - - - - - <%-- Display the links for external maps, - where the longitude and latitude can be marked and shown. - Strange syntax of this var (mapLinks) comes from later usage in a javascript.--%> - - - '${selectedMap.answerOption}
'+ -
- - '${selectedMap.answerOption}
'+ -
- - '${selectedMap.answerOption}
'+ -
- - '${selectedMap.answerOption}
'+ -
-
-
-
+
+ + + <%-- Vertical view displays records as separate tables of answers. --%> + + +
+
+  ${recordStatus.index+1} + + + <%-- If the record can be edited, display these links. --%> + +
+ + + +
+
+
+ +
+ + <%-- "Generated" means that the table for a long/lat question was already generated + and the current answer only needs to be filled in in the existing textfield. + --%> + + + + + + + + + + <%-- Display the links for external maps, + where the longitude and latitude can be marked and shown. + Strange syntax of this var (mapLinks) comes from later usage in a javascript.--%> + + + ''+ + + + ''+ + + + ''+ + + + ''+ + + + + + + - - - - - -
- - - - - - <%-- Each answer contains one piece of information: whether the checkbox is checked or not. - Since the whole table is generated for the first answer, - other answers simply check the existing boxes. --%> - + ${longitude}  + + + +
+   +   + + + + <%-- A placeholder for external maps links --%> + + +
+ + + + + + + + + + <%-- Each answer contains one piece of information: whether the checkbox is checked or not. + Since the whole table is generated for the first answer, + other answers simply check the existing boxes. --%> + +
- + - -
- - - - - - - - - - - - - - - + + + + +
+ + - - - - - - -   - ${answer.fileName} - - - - - - -
- - checked="checked" - - > -   - +
+ + + + + + + + + + + +   + ${answer.fileName} + + + + + +
+ +
+ + checked="checked" + + > + +
+
-
- -
- - - - - - - + + + + + + + + + + +   + + + + + + + +
- -   - +
+ + +
- - - - - - -
- -   -
-
-
-
- - - - - - - - <%-- A placeholder for external maps links --%> - - - - - - - -
- - + + + +
+
+   - -
-
- - - - -
-
-
- -
-
-
-
-
- - -
\ No newline at end of file + + + + + + + + Index: lams_tool_daco/web/pages/learning/listRecordsHorizontalPart.jsp =================================================================== diff -u -rbc8213e12c4e5afddd0394ad66386ef3e70d1611 -rb31ac55045b51d2098eb4b66772e3d6e2a5a89b6 --- lams_tool_daco/web/pages/learning/listRecordsHorizontalPart.jsp (.../listRecordsHorizontalPart.jsp) (revision bc8213e12c4e5afddd0394ad66386ef3e70d1611) +++ lams_tool_daco/web/pages/learning/listRecordsHorizontalPart.jsp (.../listRecordsHorizontalPart.jsp) (revision b31ac55045b51d2098eb4b66772e3d6e2a5a89b6) @@ -1,74 +1,76 @@ - - <%@ include file="/common/taglibs.jsp"%> - - - <%@ include file="/common/header.jsp"%> - - - - - - - <%-- This page modifies its content depending on the page it was included from. --%> - - - <%-- It contains users info divided into sessions. --%> - + + + + +<%-- This page modifies its content depending on the page it was included from. --%> + + +<%-- It contains users info divided into sessions. --%> + + + <%-- Record list comes from different sources, depending on the including page. --%> + + + + + + + + + + + - - <%-- To enable the table to have maximum height. --%> - - - - - - +<%-- To enable the table to have maximum height. --%> + + - - <%-- Record list comes from different sources, depending on the including page. --%> - - - - - - - - - - - + + + + + - - - - - - - - + + + + + + + + + + +
<%-- For comments on the structure, see "learning/listRecords.jsp" --%> @@ -82,16 +84,16 @@ - '${selectedMap.answerOption} '+ + ' '+ - '${selectedMap.answerOption} '+ + '+ - '${selectedMap.answerOption} '+ + ' '+ - '${selectedMap.answerOption} '+ + ' '+ @@ -101,78 +103,46 @@ -
+ @@ -254,9 +207,6 @@ - - -
- - ${recordStatus.index+1} - - - +
+
+ +
+ + ${recordStatus.index+1} + + + + <%-- If the record can be edited, display these links. --%> - " - onclick="javascript:editRecord('${sessionMapID}',${recordStatus.index+1})"> - " - onclick="javascript:removeRecord('${sessionMapID}',${recordStatus.index+1})"> - - -
+
- - + + - - - - - - - - - - - - -  ${answer.fileName} +  ${answer.fileName} - - - - - -
- - - +
+ +
+ + checked="checked" - -
- - checked="checked" - - > -   - -
-
- -
+ > + +
+ + @@ -191,58 +161,41 @@ - - - - - -
- - - - - -
- -   - - -
-
- -
+
+ +
+ + + +
+
+
- - - - - - - - - -
- - - - -
-
- - - -
-
- - - +
+
+   + + ${longitude}  + +
+ +
+   +   + + + + + +
+
-
- - -
+ + + Index: lams_tool_daco/web/pages/learning/notebook.jsp =================================================================== diff -u -r94b2225ee897f0a10318b17e1c692f2ccbb1e36b -rb31ac55045b51d2098eb4b66772e3d6e2a5a89b6 --- lams_tool_daco/web/pages/learning/notebook.jsp (.../notebook.jsp) (revision 94b2225ee897f0a10318b17e1c692f2ccbb1e36b) +++ lams_tool_daco/web/pages/learning/notebook.jsp (.../notebook.jsp) (revision b31ac55045b51d2098eb4b66772e3d6e2a5a89b6) @@ -1,73 +1,15 @@ -<%@ include file="/common/taglibs.jsp"%> - - - - - <%@ include file="/common/header.jsp"%> - - +<%@ include file="/common/taglibs.jsp"%> + + - - <fmt:message key="label.learning.title" /> - - - - - - - - - - - - - - - - -

- -

- - - -
- -
- -
- - - - -
- - -
- - - + Index: lams_tool_daco/web/pages/learning/questionSummaries.jsp =================================================================== diff -u -rbc8213e12c4e5afddd0394ad66386ef3e70d1611 -rb31ac55045b51d2098eb4b66772e3d6e2a5a89b6 --- lams_tool_daco/web/pages/learning/questionSummaries.jsp (.../questionSummaries.jsp) (revision bc8213e12c4e5afddd0394ad66386ef3e70d1611) +++ lams_tool_daco/web/pages/learning/questionSummaries.jsp (.../questionSummaries.jsp) (revision b31ac55045b51d2098eb4b66772e3d6e2a5a89b6) @@ -1,234 +1,223 @@ <%@ include file="/common/taglibs.jsp"%> -
-<%-- --%> - - - - + <%-- In some cases record list is passed as an attribute, in other - in session map. --%> <%-- This page modifies its content depending on the page it was included from. --%> - - - + - +
- -
-
- -
-
-
- -
-
- -
+
+ +
- - - - - - - - - - - - - - - - - - - - - - - <%-- Part of the content is displayed depending on the summary type --%> - - - <%-- If no records were provided --%> - - - - - - <%-- First column shows the summaries for the learner, - second one for the whole group (session) --%> - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - -
- - - ${userRecordCount } - - ${groupRecordCount } -
- - -
+
+
+
+
+ +
+
- - + + - - - - - - - +
-
- - - - - - - ${questionSummary.userSummary[0].sum} - - - ${questionSummary.userSummary[0].average} - - - - - - ${questionSummary.groupSummary[0].sum} - - - ${questionSummary.groupSummary[0].average} - - - - - - +
+ + +
+
+ +
+
+ ${userRecordCount } +
+
+ ${groupRecordCount } +
+
+ + +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + +
+
+ + + + + <%-- Part of the content is displayed depending on the summary type --%> + + + <%-- If no records were provided --%> + +
+ +
+
+ +
+
+ + + <%-- First column shows the summaries for the learner, + second one for the whole group (session) --%> +
- -
+ + ${questionSummary.userSummary[0].sum} - + ${questionSummary.userSummary[0].average} - - - -
- : - - ${singleAnswer.answer}: - - ${singleAnswer.count} -
-
- - - - - - - -
- ${singleAnswer.answer}: - - ${singleAnswer.count} -
-
- - - - - - - -
- ${fn:substring(ordinal,singleAnswer.answer-1,singleAnswer.answer)}) - - - - ${singleAnswer.sum} - - - ${singleAnswer.average} - - -
-
- - - - - - - -
- ${fn:substring(ordinal,singleAnswer.answer-1,singleAnswer.answer)}) - - - - ${singleAnswer.sum} - - - ${singleAnswer.average} - - -
-
--
-
+
+
+ + + ${questionSummary.groupSummary[0].sum} + + + ${questionSummary.groupSummary[0].average} + + +
+ + + + + +
+
+ +
+ + +
+ : +
+
+ +
+ ${singleAnswer.answer}: +
+
+
+
+ ${singleAnswer.count} +
+
+
+
+
+
+
+ +
+
+ ${singleAnswer.answer}: +
+
+ ${singleAnswer.count} +
+
+
+
+
+
+ + + + +
+ +
+ + ${fn:substring(ordinal,singleAnswer.answer-1,singleAnswer.answer)}) + + + + + ${singleAnswer.sum} + + + ${singleAnswer.average} + + + +
+
+
+ +
+ +
+ + ${fn:substring(ordinal,singleAnswer.answer-1,singleAnswer.answer)}) + + + + + ${singleAnswer.sum} + + + ${singleAnswer.average} + + + +
+
+
+
+ + +
-
+
-
+
+ +
+ + - - - + + +