We have a role that we apply to students a few weeks after a course ends. The purpose is to allow the student to see any work that they have created but not to be able to change anything. The role is a copy of the Student role with some permissions changed. We are having difficulty getting assignments to behave as we want. To prevent students submitting an assignment or modifying one that was only at draft status, we have to set "Submit assignment -- mod/assign:submit" to Prohibit. But doing this then removes the student from any assignment meaning that no one can see any students listed at all in the assignment. The code isn't my area but it appears to be because the assignment display pulls users with mod/assign:submit permission.
Does anyone have suggestions of ways to make this work as we intend? (Particularly ones that don't involve big code hacks!)