diff --git a/common/djangoapps/course_modes/views.py b/common/djangoapps/course_modes/views.py
index f7faaeb60d3f5f2a8fe9fe3ae9f7057e92887321..8ed767e499f34edeb4adc4eb65da74292401c7a4 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 edcf9278cea38f135c72e7198d4bd944a01ea54b..2d413141700381f50880051bf5f31a63f7a94eb0 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 015e4b4e2253f3f5537b3911c71a53a268f278f4..839da9cdb7c0dc7310070bea39e872aa4ada151c 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 b7263603ae710cf2c2a60f6c3b175d2ebe57e35e..de54e633468c6640fa78c44c68c0e13be93f1c6b 100644
--- a/lms/templates/verify_student/_verification_support.html
+++ b/lms/templates/verify_student/_verification_support.html
@@ -10,6 +10,7 @@
         </div>
       </li>
 
+      %if can_audit:
       <li class="help-item help-item-coldfeet">
         %if upgrade:
           <h3 class="title">${_("Change your mind?")}</h3>
@@ -23,6 +24,7 @@
           </div>
         %endif
       </li>
+      %endif
 
       <li class="help-item help-item-technical">
         <h3 class="title">${_("Technical Requirements")}</h3>
diff --git a/lms/templates/verify_student/show_requirements.html b/lms/templates/verify_student/show_requirements.html
index 97b89ba07f364685ba9feb3d46b6de316e8de54e..c88c5f0b7ace2fe4323e2a9bec71dd5254f4bf22 100644
--- a/lms/templates/verify_student/show_requirements.html
+++ b/lms/templates/verify_student/show_requirements.html
@@ -156,11 +156,13 @@
 
         <nav class="nav-wizard ${"is-not-ready" if is_not_active else "is-ready"}">
 
+        %if can_audit:
           %if upgrade:
             <span class="help help-inline">${_("Missing something? You can always continue to audit this course instead.")}</span>
           %else:
             <span class="help help-inline">${_("Missing something? You can always {a_start}audit this course instead{a_end}").format(a_start='<a href="{}">'.format(course_modes_choose_url), a_end="</a>")}</span>
           %endif
+        %endif
 
           <ol class="wizard-steps">
             <li class="wizard-step">