Index: assignment-tool/tool/src/java/org/sakaiproject/assignment/tool/AssignmentAction.java =================================================================== --- assignment-tool/tool/src/java/org/sakaiproject/assignment/tool/AssignmentAction.java (revision 5299) +++ assignment-tool/tool/src/java/org/sakaiproject/assignment/tool/AssignmentAction.java (working copy) @@ -5515,8 +5515,8 @@ // for resubmissions // when resubmit, keep the Returned flag on till the instructor grade again. Time now = TimeService.newTime(); - if (sEdit.getGraded() && sEdit.getReturned() && sEdit.getGradeReleased()) - { + + // need this to handle feedback and comments, which we have to do even if ungraded // get the previous graded date String prevGradedDate = sEdit.getProperties().getProperty(AssignmentConstants.PROP_LAST_GRADED_DATE); if (prevGradedDate == null) @@ -5526,6 +5526,9 @@ sEdit.getProperties().addProperty(AssignmentConstants.PROP_LAST_GRADED_DATE, prevGradedDate); } + if (sEdit.getGraded() && sEdit.getReturned() && sEdit.getGradeReleased()) + { + // add the current grade into previous grade histroy String previousGrades = (String) sEdit.getProperties().getProperty( ResourceProperties.PROP_SUBMISSION_SCALED_PREVIOUS_GRADES); @@ -5579,6 +5582,10 @@ sEdit.setGrade(""); sEdit.setGradeReleased(false); + } + + // following involves content, not grading, so always do on resubmit, not just if graded + // clean the ContentReview attributes sEdit.setReviewIconUrl(null); sEdit.setReviewScore(0); // default to be 0? @@ -5629,7 +5636,6 @@ sEdit.setFeedbackText(""); sEdit.setFeedbackComment(""); sEdit.clearFeedbackAttachments(); - } sEdit.setAssignment(a);