refactor: remove error_descriptor_class and NonStaffErrorBlock
It's safe to remove this because non-staff [1] users cannot access [2] an `ErrorBlock`. We were able to reproduce this with and without this commit with the following results: 1. Staff users were seeing the `ErrorBlock`. 2. Non-staff users were getting an empty `<div class="vert-mod"></div>`. In theory, error blocks should be hidden in the Learning MFE because of this option [3]. However, when we manually set `hide_access_error_blocks` to `False`, we kept getting identical results (with and without this commit), so it looks that the removal `NonStaffErrorBlock` was just omitted at some point. [1]a4ec4c1b8e/lms/djangoapps/courseware/access.py (L419-L436)[2]a4ec4c1b8e/lms/djangoapps/courseware/access.py (L150-L151)[3]92ca176fde/lms/djangoapps/courseware/views/views.py (L1547-L1551)
This commit is contained in:
@@ -40,7 +40,6 @@ from xblock.reference.plugins import FSService
|
||||
from xblock.runtime import KvsFieldData
|
||||
|
||||
from xmodule.contentstore.django import contentstore
|
||||
from xmodule.error_module import ErrorBlock, NonStaffErrorBlock
|
||||
from xmodule.exceptions import NotFoundError, ProcessingError
|
||||
from xmodule.modulestore.django import modulestore
|
||||
from xmodule.modulestore.exceptions import ItemNotFoundError
|
||||
@@ -728,12 +727,6 @@ def get_module_system_for_user(
|
||||
system.set('user_is_beta_tester', CourseBetaTesterRole(course_id).has_user(user))
|
||||
system.set('days_early_for_beta', descriptor.days_early_for_beta)
|
||||
|
||||
# make an ErrorBlock -- assuming that the descriptor's system is ok
|
||||
if has_access(user, 'staff', descriptor.location, course_id):
|
||||
system.error_descriptor_class = ErrorBlock
|
||||
else:
|
||||
system.error_descriptor_class = NonStaffErrorBlock
|
||||
|
||||
return system, field_data
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user