diff --git a/common/djangoapps/course_modes/views.py b/common/djangoapps/course_modes/views.py index f7faaeb60d..8ed767e499 100644 --- a/common/djangoapps/course_modes/views.py +++ b/common/djangoapps/course_modes/views.py @@ -60,6 +60,7 @@ class ChooseModeView(View): "chosen_price": chosen_price, "error": error, "upgrade": upgrade, + "can_audit": "audit" in modes, } if "verified" in modes: context["suggested_prices"] = [ diff --git a/common/djangoapps/student/views.py b/common/djangoapps/student/views.py index edcf9278ce..2d41314170 100644 --- a/common/djangoapps/student/views.py +++ b/common/djangoapps/student/views.py @@ -632,10 +632,16 @@ def change_enrollment(request): available_modes = CourseMode.modes_for_course(course_id) if len(available_modes) > 1: return HttpResponse( - reverse("course_modes_choose", kwargs={'course_id': course_id.to_deprecated_string()}) + reverse("course_modes_choose", kwargs={'course_id': unicode(course_id)}) ) current_mode = available_modes[0] + # only automatically enroll people if the only mode is 'honor' + if current_mode.slug != 'honor': + return HttpResponse( + reverse("course_modes_choose", kwargs={'course_id': unicode(course_id)}) + ) + CourseEnrollment.enroll(user, course.id, mode=current_mode.slug) return HttpResponse() diff --git a/lms/djangoapps/verify_student/views.py b/lms/djangoapps/verify_student/views.py index 015e4b4e22..839da9cdb7 100644 --- a/lms/djangoapps/verify_student/views.py +++ b/lms/djangoapps/verify_student/views.py @@ -74,7 +74,8 @@ class VerifyView(View): # bookkeeping-wise just to start over. progress_state = "start" - verify_mode = CourseMode.mode_for_course(course_id, "verified") + modes_dict = CourseMode.modes_for_course_dict(course_id) + verify_mode = modes_dict['verified'] # if the course doesn't have a verified mode, we want to kick them # from the flow if not verify_mode: @@ -102,6 +103,7 @@ class VerifyView(View): "chosen_price": chosen_price, "min_price": verify_mode.min_price, "upgrade": upgrade, + "can_audit": "audit" in modes_dict, } return render_to_response('verify_student/photo_verification.html', context) @@ -121,7 +123,9 @@ class VerifiedView(View): course_id = SlashSeparatedCourseKey.from_deprecated_string(course_id) if CourseEnrollment.enrollment_mode_for_user(request.user, course_id) == ('verified', True): return redirect(reverse('dashboard')) - verify_mode = CourseMode.mode_for_course(course_id, "verified") + + modes_dict = CourseMode.modes_for_course_dict(course_id) + verify_mode = modes_dict['verified'] if verify_mode is None: return redirect(reverse('dashboard')) @@ -146,6 +150,7 @@ class VerifiedView(View): "chosen_price": chosen_price, "create_order_url": reverse("verify_student_create_order"), "upgrade": upgrade, + "can_audit": "audit" in modes_dict, } return render_to_response('verify_student/verified.html', context) diff --git a/lms/templates/verify_student/_verification_support.html b/lms/templates/verify_student/_verification_support.html index b7263603ae..de54e63346 100644 --- a/lms/templates/verify_student/_verification_support.html +++ b/lms/templates/verify_student/_verification_support.html @@ -10,6 +10,7 @@ + %if can_audit: