Adds CouseModule.course_visibility and XBlock.public_view() for unenrolled users access to courses.
The course_visiblity field can have one of three values: 1. private (default): This keeps the standard access rules. 2. public_outline: Allows unenrolled and anonymous users access to the outline. 3. public: Allows unenrolled and anonymous users access to both outline and course content. When an unenrolled user accesses course content, instead of student_view(), public_view() is used. A default implementation is provided for XBlocks which do not implement this view. The public_view() must not have any functionality which assumes the presence of a valid User and should show a readonly only interface for the XBlock content.
This commit is contained in:
committed by
Usman Khalid
parent
2d338b34aa
commit
c4fc4b5df6
@@ -79,6 +79,13 @@ class HtmlBlock(object):
|
||||
"""
|
||||
return Fragment(self.get_html())
|
||||
|
||||
@XBlock.supports("multi_device")
|
||||
def public_view(self, context):
|
||||
"""
|
||||
Returns a fragment that contains the html for the preview view
|
||||
"""
|
||||
return self.student_view(context)
|
||||
|
||||
def student_view_data(self, context=None): # pylint: disable=unused-argument
|
||||
"""
|
||||
Return a JSON representation of the student_view of this XBlock.
|
||||
|
||||
Reference in New Issue
Block a user