diff --git a/cms/djangoapps/contentstore/views/certificates.py b/cms/djangoapps/contentstore/views/certificates.py index b6bbe3ebe8..614a690bb2 100644 --- a/cms/djangoapps/contentstore/views/certificates.py +++ b/cms/djangoapps/contentstore/views/certificates.py @@ -359,11 +359,14 @@ def certificates_list_handler(request, course_key_string): course_id=course.id, include_expired=True ) if mode.slug != 'audit' ] - certificate_web_view_url = get_lms_link_for_certificate_web_view( - user_id=request.user.id, - course_key=course_key, - mode=course_modes[0] # CourseMode.modes_for_course returns default mode if doesn't find anyone. - ) + if len(course_modes) > 0: + certificate_web_view_url = get_lms_link_for_certificate_web_view( + user_id=request.user.id, + course_key=course_key, + mode=course_modes[0] # CourseMode.modes_for_course returns default mode if doesn't find anyone. + ) + else: + certificate_web_view_url = None certificates = None is_active = False if settings.FEATURES.get('CERTIFICATES_HTML_VIEW', False): diff --git a/lms/djangoapps/mobile_api/users/tests.py b/lms/djangoapps/mobile_api/users/tests.py index ae188ff729..37e8ec6ace 100644 --- a/lms/djangoapps/mobile_api/users/tests.py +++ b/lms/djangoapps/mobile_api/users/tests.py @@ -20,6 +20,7 @@ from courseware.access_response import ( StartDateError, VisibilityError, ) +from course_modes.models import CourseMode from student.models import CourseEnrollment from util.milestones_helpers import ( set_prerequisite_courses, @@ -94,7 +95,7 @@ class TestUserEnrollmentApi(UrlResetMixin, MobileAPITestCase, MobileAuthUserTest self.assertIn('course_info/{}/handouts'.format(self.course.id), found_course['course_handouts']) self.assertIn('video_outlines/courses/{}'.format(self.course.id), found_course['video_outline']) self.assertEqual(found_course['id'], unicode(self.course.id)) - self.assertEqual(courses[0]['mode'], 'honor') + self.assertEqual(courses[0]['mode'], CourseMode.DEFAULT_MODE_SLUG) self.assertEqual(courses[0]['course']['subscription_id'], self.course.clean_id(padding_char='_')) def verify_failure(self, response, error_type=None):