From bb3fd0e6abc08c8686a43f4507e7fe9ac235d6e8 Mon Sep 17 00:00:00 2001 From: druiz309 <101261300+druiz309@users.noreply.github.com> Date: Fri, 1 Apr 2022 13:11:13 +0200 Subject: [PATCH] SAK-47113 Dashboard and Gradebook: Not released gradebook items are visible to the students via dashboard (#10390) --- .../business/GradebookNgBusinessService.java | 26 ++++++++++--------- 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/gradebookng/tool/src/java/org/sakaiproject/gradebookng/business/GradebookNgBusinessService.java b/gradebookng/tool/src/java/org/sakaiproject/gradebookng/business/GradebookNgBusinessService.java index 2382bf14ae17..508a9f4fe1b7 100644 --- a/gradebookng/tool/src/java/org/sakaiproject/gradebookng/business/GradebookNgBusinessService.java +++ b/gradebookng/tool/src/java/org/sakaiproject/gradebookng/business/GradebookNgBusinessService.java @@ -1988,17 +1988,19 @@ public Long addAssignment(final Assignment assignment) { EventHelper.postAddAssignmentEvent(gradebook, assignmentId, assignment, getUserRoleOrNone()); - // Create the task - String reference = GradebookService.REFERENCE_ROOT + Entity.SEPARATOR + "a" + Entity.SEPARATOR + getCurrentSiteId() + Entity.SEPARATOR + assignmentId; - Task task = new Task(); - task.setSiteId(getCurrentSiteId()); - task.setReference(reference); - task.setSystem(true); - task.setDescription(assignment.getName()); - task.setDue((assignment.getDueDate() == null) ? null : assignment.getDueDate().toInstant()); - Set users = new HashSet<>(this.getGradeableUsers()); - taskService.createTask(task, users, Priorities.HIGH); - + // Create the task if it is released + if(assignment.isReleased()) { + String reference = GradebookService.REFERENCE_ROOT + Entity.SEPARATOR + "a" + Entity.SEPARATOR + getCurrentSiteId() + Entity.SEPARATOR + assignmentId; + Task task = new Task(); + task.setSiteId(getCurrentSiteId()); + task.setReference(reference); + task.setSystem(true); + task.setDescription(assignment.getName()); + task.setDue((assignment.getDueDate() == null) ? null : assignment.getDueDate().toInstant()); + Set users = new HashSet<>(this.getGradeableUsers()); + taskService.createTask(task, users, Priorities.HIGH); + } + return assignmentId; // TODO wrap this so we can catch any runtime exceptions @@ -2250,7 +2252,7 @@ public void updateAssignment(final Assignment assignment) { task.setDescription(assignment.getName()); task.setDue((assignment.getDueDate() == null) ? null : assignment.getDueDate().toInstant()); taskService.saveTask(task); - } else { + } else if(assignment.isReleased()) { // Create the task Task task = new Task(); task.setSiteId(getCurrentSiteId());