MDL-49926 gradereport: Feedback gets saved when editing grade in ajax mode
authorMartin Mastny <mastnym@vscht.cz>
Mon, 20 Apr 2015 07:56:58 +0000 (15:56 +0800)
committerMartin Mastny <mastnym@vscht.cz>
Fri, 24 Apr 2015 05:16:07 +0000 (13:16 +0800)
grade/report/grader/module.js

index 706571e..1f4a073 100644 (file)
@@ -102,6 +102,13 @@ M.gradereport_grader.classes.report.prototype.get_cell_info = function(arg) {
         return null;
     }
 
         return null;
     }
 
+    for (i in this.feedback) {
+        if (this.feedback[i] && this.feedback[i].user == userid && this.feedback[i].item == itemid) {
+            feedback = this.feedback[i].content;
+            break;
+        }
+    }
+
     return {
         id : cell.getAttribute('id'),
         userid : userid,
     return {
         id : cell.getAttribute('id'),
         userid : userid,
@@ -111,6 +118,7 @@ M.gradereport_grader.classes.report.prototype.get_cell_info = function(arg) {
         itemtype : this.items[itemid].type,
         itemscale : this.items[itemid].scale,
         itemdp : this.items[itemid].decimals,
         itemtype : this.items[itemid].type,
         itemscale : this.items[itemid].scale,
         itemdp : this.items[itemid].decimals,
+        feedback : feedback,
         cell : cell
     };
 };
         cell : cell
     };
 };
@@ -927,7 +935,7 @@ M.gradereport_grader.classes.textfield.prototype.get_feedback = function() {
     }
     var properties = this.report.get_cell_info(this.node);
     if (properties) {
     }
     var properties = this.report.get_cell_info(this.node);
     if (properties) {
-        return properties.feedback || '';
+        return properties.feedback;
     }
     return '';
 };
     }
     return '';
 };
@@ -1101,7 +1109,7 @@ M.gradereport_grader.classes.scalefield.prototype.has_changed = function() {
     this.editable = true;
     if (this.editfeedback) {
         var properties = this.report.get_cell_info(this.node);
     this.editable = true;
     if (this.editfeedback) {
         var properties = this.report.get_cell_info(this.node);
-        var feedback = properties.feedback || '';
+        var feedback = properties.feedback;
         return (gradef != gradec || this.get_feedback() != feedback);
     }
     return (gradef != gradec);
         return (gradef != gradec || this.get_feedback() != feedback);
     }
     return (gradef != gradec);