Index: lams_tool_assessment/web/pages/monitoring/summary.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/web/pages/monitoring/summary.jsp,v diff -u -r1.25 -r1.26 --- lams_tool_assessment/web/pages/monitoring/summary.jsp 7 Jul 2014 16:23:40 -0000 1.25 +++ lams_tool_assessment/web/pages/monitoring/summary.jsp 2 Jun 2015 16:36:12 -0000 1.26 @@ -94,7 +94,19 @@ cellEdit: true, afterEditCell: function (rowid,name,val,iRow,iCol){ oldValue = eval(val); - }, + }, + beforeSaveCell : function(rowid, name, val, iRow, iCol) { + if (isNaN(val)) { + return null; + } + + // get maxGrade attribute which was set in masterDetailLoadUp.jsp + var maxGrade = jQuery("table#userSummary${summary.sessionId} tr#" + iRow + + " td[aria-describedby$='_" + name + "']").attr("maxGrade"); + if (val > maxGrade) { + return maxGrade; + } + }, afterSaveCell : function (rowid,name,val,iRow,iCol){ if (isNaN(val)) { jQuery("#userSummary${summary.sessionId}").restoreCell(iRow,iCol); Index: lams_tool_assessment/web/pages/monitoring/parts/masterDetailLoadUp.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/web/pages/monitoring/parts/masterDetailLoadUp.jsp,v diff -u -r1.8 -r1.9 --- lams_tool_assessment/web/pages/monitoring/parts/masterDetailLoadUp.jsp 8 Apr 2014 18:04:26 -0000 1.8 +++ lams_tool_assessment/web/pages/monitoring/parts/masterDetailLoadUp.jsp 2 Jun 2015 16:36:12 -0000 1.9 @@ -11,13 +11,19 @@ var responseStr = ""; <%@ include file="userresponse.jsp"%> - jQuery("#userSummary${assessmentResult.sessionId}").addRowData(${i.index + 1}, { + + var table = jQuery("#userSummary${assessmentResult.sessionId}"); + table.addRowData(${i.index + 1}, { id:"${i.index + 1}", questionResultUid:"${questionResult.uid}", title:"${fn:escapeXml(title)}", response:responseStr, grade:"" }); + + + // set maxGrade attribute to cell DOM element + table.setCell(${i.index + 1}, "grade", "", null, {"maxGrade" : ${questionResult.maxMark}}); }; masterDetailLoadUp(); Index: lams_tool_assessment/web/pages/monitoring/parts/questionsummary.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/web/pages/monitoring/parts/questionsummary.jsp,v diff -u -r1.12 -r1.13 --- lams_tool_assessment/web/pages/monitoring/parts/questionsummary.jsp 27 Jun 2014 23:18:18 -0000 1.12 +++ lams_tool_assessment/web/pages/monitoring/parts/questionsummary.jsp 2 Jun 2015 16:36:12 -0000 1.13 @@ -57,6 +57,17 @@ beforeEditCell: function (rowid,name,val,iRow,iCol){ previousCellValue = val; }, + beforeSaveCell : function(rowid, name, val, iRow, iCol) { + if (isNaN(val)) { + return null; + } + + var maxGrade = jQuery("table#session${session.sessionId} tr#" + iRow + + " td[aria-describedby$='_" + name + "']").attr("maxGrade"); + if (val > maxGrade) { + return maxGrade; + } + }, afterSaveCell : function (rowid,name,val,iRow,iCol){ var questionResultUid = jQuery("#session${session.sessionId}").getCell(rowid, 'questionResultUid'); if (isNaN(val) || (questionResultUid=="")) { @@ -102,12 +113,16 @@ - jQuery("#session${session.sessionId}").addRowData(${i.index + 1}, { + var table = jQuery("#session${session.sessionId}"); + table.addRowData(${i.index + 1}, { questionResultUid:"${questionResult.uid}", userName:"${questionResult.user.lastName}, ${questionResult.user.firstName}", response:responseStr, grade:grade }); + + // set maxGrade attribute to cell DOM element + table.setCell(${i.index + 1}, "grade", "", null, {"maxGrade" : ${questionResult.maxMark}}); Index: lams_tool_assessment/web/pages/monitoring/parts/usersummary.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_assessment/web/pages/monitoring/parts/usersummary.jsp,v diff -u -r1.16 -r1.17 --- lams_tool_assessment/web/pages/monitoring/parts/usersummary.jsp 27 Jun 2014 23:18:18 -0000 1.16 +++ lams_tool_assessment/web/pages/monitoring/parts/usersummary.jsp 2 Jun 2015 16:36:12 -0000 1.17 @@ -57,7 +57,18 @@ cellEdit: true, beforeEditCell: function (rowid,name,val,iRow,iCol){ previousCellValue = val; - }, + }, + beforeSaveCell : function(rowid, name, val, iRow, iCol) { + if (isNaN(val)) { + return null; + } + + var maxGrade = jQuery("table#user${question.uid} tr#" + iRow + + " td[aria-describedby$='_" + name + "']").attr("maxGrade"); + if (val > maxGrade) { + return maxGrade; + } + }, afterSaveCell : function (rowid,name,val,iRow,iCol){ //var questionResultUid = jQuery("#user${question.uid}").getCell(rowid, 'questionResultUid'); if (isNaN(val)) { //|| (questionResultUid=="")) { @@ -91,13 +102,17 @@ var responseStr = ""; <%@ include file="userresponse.jsp"%> - jQuery("#user${question.uid}").addRowData(${i.index + 1}, { + var table = jQuery("#user${question.uid}"); + table.addRowData(${i.index + 1}, { id:"${i.index + 1}", questionResultUid:"${questionResult.uid}", time:"${questionResult.finishDate}", response:responseStr, grade:"" }); + + // set maxGrade attribute to cell DOM element + table.setCell(${i.index + 1}, "grade", "", null, {"maxGrade" : ${questionResult.maxMark}}); Index: lams_tool_lamc/web/monitoring/SummaryContent.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_lamc/web/monitoring/SummaryContent.jsp,v diff -u -r1.41 -r1.42 --- lams_tool_lamc/web/monitoring/SummaryContent.jsp 4 May 2015 16:57:32 -0000 1.41 +++ lams_tool_lamc/web/monitoring/SummaryContent.jsp 2 Jun 2015 16:36:13 -0000 1.42 @@ -113,12 +113,25 @@ afterEditCell: function (rowid,name,val,iRow,iCol){ oldValue = eval(val); }, + beforeSaveCell : function(rowid, name, val, iRow, iCol) { + var intRegex = /^\d+$/; + if (!intRegex.test(val)) { + return null; + } + + // get maxGrade attribute which was set in masterDetailLoadUp.jsp + var maxGrade = jQuery("table#userSummary${sessionMarkDto.sessionId} tr#" + iRow + + " td[aria-describedby$='_" + name + "']").attr("maxGrade"); + if (val > maxGrade) { + return maxGrade; + } + }, afterSaveCell : function (rowid,name,val,iRow,iCol){ var intRegex = /^\d+$/; if (!intRegex.test(val)) { jQuery("#userSummary${sessionMarkDto.sessionId}").restoreCell(iRow,iCol); } else { - var parentSelectedRowId = jQuery("#group${sessionMarkDto.sessionId}").getGridParam("selrow"); + var parentSelectedRowId = jQuery("#group${sessionMarkDto.sessionId}").getGridParam("selrow"); var previousTotal = eval(jQuery("#group${sessionMarkDto.sessionId}").getCell(parentSelectedRowId, 'total')); jQuery("#group${sessionMarkDto.sessionId}").setCell(parentSelectedRowId, 'total', previousTotal - oldValue + eval(val), {}, {}); } Index: lams_tool_lamc/web/monitoring/masterDetailLoadUp.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_tool_lamc/web/monitoring/masterDetailLoadUp.jsp,v diff -u -r1.1 -r1.2 --- lams_tool_lamc/web/monitoring/masterDetailLoadUp.jsp 3 Sep 2013 16:56:41 -0000 1.1 +++ lams_tool_lamc/web/monitoring/masterDetailLoadUp.jsp 2 Jun 2015 16:36:13 -0000 1.2 @@ -5,15 +5,18 @@ jQuery("#userSummary${toolSessionID}").clearGridData().setGridParam({scrollOffset: 18}); - - jQuery("#userSummary${toolSessionID}").addRowData(${i.index + 1}, { + var table = jQuery("#userSummary${toolSessionID}"); + + table.addRowData(${i.index + 1}, { id: "${i.index + 1}", userAttemptUid: "${userAttempt.uid}", title: "${userAttempt.mcQueContent.escapedQuestion}", response: "${userAttempt.mcOptionsContent.escapedOptionText}", grade: "" }); + // set maxGrade attribute to cell DOM element + table.setCell(${i.index + 1}, "grade", "", null, {"maxGrade" : ${userAttempt.mcQueContent.mark}}); };