Skip to content

Conversation

@somiaj
Copy link
Contributor

@somiaj somiaj commented Dec 24, 2025

Rework when a user is able to see set information on the ProblemSet page. This includes being able to see the set description and information header before a set is open.

The goal is to make the ProblemSet page friendlier when a student accesses it from an LMS before the open date or if the set is not currently visible. In addition the set headers can be used to provide information to students before the set opens.

This is done by adding a new permission view_unoppend_set_info which defaults to guest (this allows instructors to change this to ta to get the old behavior). Users with this permission will be shown a ProblemSet page that includes when the set opens along with the set information header and a button to email the instructor before the open date. In addition users with this permission will be shown a warning alert instead of a danger alert if they try to access a hidden set (the set header will not be included in this case).

Note, that the permission view_unoppend_sets description in the course configuration is just being able to view problems on sets which are not open, so this new permission is consistent with the previous description, it just separates seeing set info from seeing set problems.

Care is taken to ensure that students can view (thus access) any existing test versions for tests that have ip restrictions, or if the template open date was changed.

Last, only show the right info panel div when the panel is not empty and doesn't include only whitespace. And translations were added to messages about IP restrictions.

@somiaj somiaj force-pushed the unopened-set-preview branch from 7786a3d to ba53b4d Compare December 25, 2025 17:11
Rework when a user is able to see set information on the ProblemSet
page. This includes being able to see the set description and
information header before a set is open.

The goal is to make the ProblemSet page friendlier when a student
accesses it from an LMS before the open date or if the set is not
currently visible. In addition the set headers can be used to
provide information to students before the set opens.

This is done by adding a new permission `view_unoppend_set_info`
which defaults to `guest` (this allows instructors to change this to
`ta` to get the old behavior). Users with this permission will be
shown a ProblemSet page that includes when the set opens along with
the set information header and a button to email the instructor
before the open date. In addition users with this permission
will be shown a warning alert instead of a danger alert if they
try to access a hidden set (the set header will not be included
in this case).

Note, that the permission `view_unoppend_sets` description in
the course configuration is just being able to view problems
on sets which are not open, so this new permission is consistent
with the previous description, it just separates seeing set info
from seeing set problems.

Care is taken to ensure that students can view (thus access)
any existing test versions for tests that have ip restrictions,
or if the template open date was changed.

Last, only show the right info panel div when the panel is not
empty and doesn't include only whitespace. And translations were
added to messages about IP restrictions.
@somiaj somiaj force-pushed the unopened-set-preview branch from ba53b4d to 1bc4f49 Compare December 25, 2025 17:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant