Index: lams_build/lib/lams/lams-gradebook.jar
===================================================================
diff -u -r2485ce33e55a921bdcde94e4f242da5da3cf1fc4 -r294a26345c2dec685d6a5fe5aa37ab9ce1433dab
Binary files differ
Index: lams_build/lib/lams/lams.jar
===================================================================
diff -u -r0ed9749f00a1e1f92b989b270857d7f3c3f237cb -r294a26345c2dec685d6a5fe5aa37ab9ce1433dab
Binary files differ
Index: lams_common/src/java/org/lamsfoundation/lams/dbupdates/patch20180629.sql
===================================================================
diff -u
--- lams_common/src/java/org/lamsfoundation/lams/dbupdates/patch20180629.sql (revision 0)
+++ lams_common/src/java/org/lamsfoundation/lams/dbupdates/patch20180629.sql (revision 294a26345c2dec685d6a5fe5aa37ab9ce1433dab)
@@ -0,0 +1,24 @@
+-- Turn off autocommit, so nothing is committed if there is an error
+SET AUTOCOMMIT = 0;
+SET FOREIGN_KEY_CHECKS=0;
+----------------------Put all sql statements below here-------------------------
+
+-- LDEV-4609 Bind archived activity marks in batches
+DELETE FROM lams_gradebook_user_activity_archive;
+DELETE FROM lams_gradebook_user_lesson_archive;
+
+ALTER TABLE lams_gradebook_user_lesson_archive ADD COLUMN archive_date DATETIME;
+ALTER TABLE lams_gradebook_user_activity_archive ADD COLUMN archive_date DATETIME;
+
+DELETE FROM lams_progress_attempted_archive;
+DELETE FROM lams_progress_completed_archive;
+DELETE FROM lams_learner_progress_archive;
+
+ALTER TABLE lams_learner_progress_archive ADD COLUMN archive_date DATETIME;
+
+----------------------Put all sql statements above here-------------------------
+
+-- If there were no errors, commit and restore autocommit to on
+COMMIT;
+SET AUTOCOMMIT = 1;
+SET FOREIGN_KEY_CHECKS=1;
\ No newline at end of file
Index: lams_gradebook/web/gradebookMonitor.jsp
===================================================================
diff -u -r9fe27f7e744dd1c97f0b0226679d8c6f5cb516b7 -r294a26345c2dec685d6a5fe5aa37ab9ce1433dab
--- lams_gradebook/web/gradebookMonitor.jsp (.../gradebookMonitor.jsp) (revision 9fe27f7e744dd1c97f0b0226679d8c6f5cb516b7)
+++ lams_gradebook/web/gradebookMonitor.jsp (.../gradebookMonitor.jsp) (revision 294a26345c2dec685d6a5fe5aa37ab9ce1433dab)
@@ -172,7 +172,8 @@
"",
"",
"",
- 'portraitId'
+ 'portraitId',
+ 'hasArchivedMarks'
],
colModel:[
{name:'id', index:'id', sortable:false, editable:false, hidden:true, search:false, hidedlg:true},
@@ -183,19 +184,21 @@
{name:'finishDate',index:'finishDate', sortable:false, editable:false, hidden:false, search:false, width:85, align:"left"},
{name:'feedback',index:'feedback', sortable:true, editable:true, edittype:'textarea', editoptions:{rows:'4',cols:'20'}, search:false },
{name:'mark',index:'mark', sortable:true, editable:true, editrules:{number:true}, search:false, width:50, align:"center"},
- {name:'portraitId', index:'portraitId', width:0, hidden: true}
+ {name:'portraitId', index:'portraitId', width:0, hidden: true},
+ {name:'hasArchivedMarks', index:'hasArchivedMarks', width:0, hidden: true}
],
loadError: function(xhr,st,err) {
jQuery("#userView").clearGridData();
alert("");
},
subGrid: true,
subGridRowExpanded: function(subgrid_id, row_id) {
- var subgrid_table_id;
- var userID = jQuery("#userView").getRowData(row_id)["id"];
- subgrid_table_id = subgrid_id+"_t";
+ var subgrid_table_id = subgrid_id+"_t",
+ rowData = jQuery("#userView").getRowData(row_id),
+ userID = rowData["id"],
+ hasArchivedMarks = rowData["hasArchivedMarks"] == "true";
jQuery("#"+subgrid_id).html("
");
- jQuery("#"+subgrid_table_id).jqGrid({
+ jQuery("#"+subgrid_table_id).jqGrid({
guiStyle: "bootstrap",
iconSet: 'fontAwesome',
autoencode:false,
@@ -305,7 +308,81 @@
},
gridComplete: function(){
fixPagerInCenter(subgrid_table_id+"_pager", 1);
- }
+ },
+ subGrid : hasArchivedMarks,
+ subGridRowExpanded: function(subgrid_id, row_id) {
+ var subgrid_table_id = subgrid_id + "_t",
+ rowData = jQuery("#" + subgrid_id.substring(0, subgrid_id.lastIndexOf('_'))).getRowData(row_id),
+ activityID = rowData["id"].split("_")[0];
+ jQuery("#"+subgrid_id).html("");
+ jQuery("#"+subgrid_table_id).jqGrid({
+ guiStyle: "bootstrap",
+ iconSet: 'fontAwesome',
+ autoencode:false,
+ datatype: "xml",
+ url: "/gradebook/gradebook.do?dispatch=getActivityArchiveGridData&lessonID=${lessonDetails.lessonID}&activityID="
+ + activityID + "&view=monUserView&userID=" + userID,
+ height: "100%",
+ autowidth:true,
+ cellEdit:false,
+ pager: false,
+ colNames: [
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ ""
+ ],
+ colModel: [
+ {name:'id', index:'id', sortable:false, editable: false ,width:40, align:"right"},
+ {name:'restart',index:'restart', sortable:false, editable: false, width:60,align:"left"},
+ {name:'lessonMark', index:'lessonMark', sortable:false, editable: false, width:50, align:"center" },
+ {name:'status', index:'status', sortable:false, editable:false, width:50, align:"center"},
+ {name:'timeTaken',index:'timeTaken', sortable:false, editable: false, width:80, align:"center"},
+ {name:'startDate',index:'startDate', sortable:false, editable:false, search:false, width:85, align:"left"},
+ {name:'finishDate',index:'finishDate', sortable:false, editable:false, search:false, width:85, align:"left"},
+ {name:'feedback', index:'feedback', sortable:false, editable: false, width:200, hidden:true},
+ {name:'mark', index:'mark', sortable:false, editable: false, width:50, align:"center" }
+ ],
+ loadError: function(xhr,st,err) {
+ jQuery("#"+subgrid_table_id).clearGridData();
+ alert("");
+ },
+ formatCell: function(rowid, cellname,value, iRow, iCol) {
+ if (cellname == "mark") {
+
+ var rowData = jQuery("#"+subgrid_table_id).getRowData(rowid);
+ var string = removeHTMLTags(rowData["mark"]);
+
+
+ if (string.indexOf("-") != -1)
+ {
+ string = " ";
+
+ } else if (string.indexOf("/") != -1) {
+ splits = string.split("/");
+
+ if(splits.length == 2) {
+ tempMark = splits[0];
+ string = " ";
+ } else {
+ string = " ";
+ }
+ }
+
+ return string;
+
+ }
+ },
+ gridComplete: function(){
+ toolTip($(".jqgrow"), "jqgridTooltip");
+ }
+ });
+ }
}).navGrid("#"+subgrid_table_id+"_pager", {edit:false,add:false,del:false,search:false}); // applying refresh button
},