From 04929cdc72ae0db7a13870b4d364f864e4571a0c Mon Sep 17 00:00:00 2001 From: Brian Whitmer Date: Wed, 26 Jan 2011 17:48:29 -0700 Subject: [PATCH] Send gradebook update to server even if value hasn't changed If a user is in the gradebook and clicks on a value and hits "enter" then it should always send a request to the server, even if they haven't changed the value. fixes #3633 Change-Id: I08d84ce8deb421632766dcce5b65d286d3c5ca41 Reviewed-on: https://gerrit.instructure.com/2091 Reviewed-by: Ryan Shaw Tested-by: Brian Whitmer --- public/javascripts/gradebooks.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/public/javascripts/gradebooks.js b/public/javascripts/gradebooks.js index 94ff891151b..0c15b0fbfb5 100644 --- a/public/javascripts/gradebooks.js +++ b/public/javascripts/gradebooks.js @@ -215,7 +215,7 @@ event.preventDefault(); event.stopPropagation(); if(event.keyString == 'return' || event.keyString == 'tab') { //Code == 13 || event.keyCode == 9) { - $(this).blur(); + $(this).triggerHandler('blur', true); if(event.keyString == 'return') { //Code == 13) { datagrid.moveDown(); } else { @@ -231,14 +231,14 @@ $gridcell.focus(); } }); - $(".grading_value").blur(function() { + $(".grading_value").blur(function(event, forceUpdate) { var $td = $(this).parents(".table_entry").parents("div.cell"); if($td.length > 0) { var $box = $(this); if($box.parents(".grading_box").length) { $box = $box.parents(".grading_box"); } - updateDataEntry($box); + updateDataEntry($box, forceUpdate); datagrid.blur(); } }); @@ -1091,7 +1091,7 @@ } return result; } - function updateDataEntry($box) { + function updateDataEntry($box, forceUpdate) { var $input = $box; var $parent = $input.parents(".table_entry"); if(!$box.hasClass('grading_value')) { @@ -1119,7 +1119,7 @@ data.assignment_id = submission.assignment_id; data.student_id = submission.user_id; data.grade = sendVal; - if(sendVal != oldVal) { + if(sendVal != oldVal || (sendVal && forceUpdate)) { submitDataEntry(data); } if(!val || val == "") {