"""Middleware for the courseware app"""fromdjango.shortcutsimportredirectfromdjango.core.urlresolversimportreversefromcourseware.coursesimportUserNotEnrolled
classRedirectUnenrolledMiddleware(object):""" Catch UserNotEnrolled errors thrown by `get_course_with_access` and redirect users to the course about page """defprocess_exception(self,request,exception):ifisinstance(exception,UserNotEnrolled):course_key=exception.course_keyreturnredirect(reverse('courseware.views.course_about',args=[course_key.to_deprecated_string()]))