diff --git a/lms/djangoapps/analytics/basic.py b/lms/djangoapps/analytics/basic.py index c51b96bc2d..498cfd22c7 100644 --- a/lms/djangoapps/analytics/basic.py +++ b/lms/djangoapps/analytics/basic.py @@ -14,11 +14,11 @@ PROFILE_FEATURES = ('name', 'language', 'location', 'year_of_birth', 'gender', AVAILABLE_FEATURES = STUDENT_FEATURES + PROFILE_FEATURES -def enrolled_students_profiles(course_id, features): +def enrolled_students_features(course_id, features): """ Return list of student features as dictionaries. - enrolled_students_profiles(course_id, ['username, first_name']) + enrolled_students_features(course_id, ['username, first_name']) would return [ {'username': 'username1', 'first_name': 'firstname1'} {'username': 'username2', 'first_name': 'firstname2'} diff --git a/lms/djangoapps/analytics/tests/test_basic.py b/lms/djangoapps/analytics/tests/test_basic.py index 2e5fa2571d..e0251c4567 100644 --- a/lms/djangoapps/analytics/tests/test_basic.py +++ b/lms/djangoapps/analytics/tests/test_basic.py @@ -6,7 +6,7 @@ from django.test import TestCase from student.models import CourseEnrollment from student.tests.factories import UserFactory -from analytics.basic import enrolled_students_profiles, AVAILABLE_FEATURES, STUDENT_FEATURES, PROFILE_FEATURES +from analytics.basic import enrolled_students_features, AVAILABLE_FEATURES, STUDENT_FEATURES, PROFILE_FEATURES class TestAnalyticsBasic(TestCase): @@ -17,19 +17,19 @@ class TestAnalyticsBasic(TestCase): self.users = tuple(UserFactory() for _ in xrange(30)) self.ces = tuple(CourseEnrollment.objects.create(course_id=self.course_id, user=user) for user in self.users) - def test_enrolled_students_profiles_username(self): + def test_enrolled_students_features_username(self): self.assertIn('username', AVAILABLE_FEATURES) - userreports = enrolled_students_profiles(self.course_id, ['username']) + userreports = enrolled_students_features(self.course_id, ['username']) self.assertEqual(len(userreports), len(self.users)) for userreport in userreports: self.assertEqual(userreport.keys(), ['username']) self.assertIn(userreport['username'], [user.username for user in self.users]) - def test_enrolled_students_profiles_keys(self): + def test_enrolled_students_features_keys(self): query_features = ('username', 'name', 'email') for feature in query_features: self.assertIn(feature, AVAILABLE_FEATURES) - userreports = enrolled_students_profiles(self.course_id, query_features) + userreports = enrolled_students_features(self.course_id, query_features) self.assertEqual(len(userreports), len(self.users)) for userreport in userreports: self.assertEqual(set(userreport.keys()), set(query_features)) diff --git a/lms/djangoapps/instructor/views/api.py b/lms/djangoapps/instructor/views/api.py index 56f2c296d3..ecab296d13 100644 --- a/lms/djangoapps/instructor/views/api.py +++ b/lms/djangoapps/instructor/views/api.py @@ -248,7 +248,7 @@ def grading_config(request, course_id): @ensure_csrf_cookie @cache_control(no_cache=True, no_store=True, must_revalidate=True) -def enrolled_students_profiles(request, course_id, csv=False): +def enrolled_students_features(request, course_id, csv=False): """ Respond with json which contains a summary of all enrolled students profile information. @@ -264,7 +264,7 @@ def enrolled_students_profiles(request, course_id, csv=False): query_features = ['username', 'name', 'email', 'language', 'location', 'year_of_birth', 'gender', 'level_of_education', 'mailing_address', 'goals'] - student_data = analytics.basic.enrolled_students_profiles(course_id, query_features) + student_data = analytics.basic.enrolled_students_features(course_id, query_features) if not csv: response_payload = { diff --git a/lms/djangoapps/instructor/views/instructor_dashboard.py b/lms/djangoapps/instructor/views/instructor_dashboard.py index b5b300ec30..148a7bd59c 100644 --- a/lms/djangoapps/instructor/views/instructor_dashboard.py +++ b/lms/djangoapps/instructor/views/instructor_dashboard.py @@ -135,7 +135,7 @@ def _section_data_download(course_id): 'section_key': 'data_download', 'section_display_name': 'Data Download', 'grading_config_url': reverse('grading_config', kwargs={'course_id': course_id}), - 'enrolled_students_profiles_url': reverse('enrolled_students_profiles', kwargs={'course_id': course_id}), + 'enrolled_students_features_url': reverse('enrolled_students_features', kwargs={'course_id': course_id}), } return section_data diff --git a/lms/templates/courseware/instructor_dashboard_2/data_download.html b/lms/templates/courseware/instructor_dashboard_2/data_download.html index 9e9d491cda..fb7b25f9a9 100644 --- a/lms/templates/courseware/instructor_dashboard_2/data_download.html +++ b/lms/templates/courseware/instructor_dashboard_2/data_download.html @@ -1,7 +1,7 @@ <%page args="section_data"/> - - + +
## ## diff --git a/lms/urls.py b/lms/urls.py index 26d9e890bd..203b0bca62 100644 --- a/lms/urls.py +++ b/lms/urls.py @@ -354,8 +354,8 @@ if settings.COURSEWARE_ENABLED and settings.MITX_FEATURES.get('ENABLE_INSTRUCTOR 'instructor.views.api.access_allow_revoke', name="access_allow_revoke"), url(r'^courses/(?P[^/]+/[^/]+/[^/]+)/instructor_dashboard/api/grading_config$', 'instructor.views.api.grading_config', name="grading_config"), - url(r'^courses/(?P[^/]+/[^/]+/[^/]+)/instructor_dashboard/api/enrolled_students_profiles(?P/csv)?$', - 'instructor.views.api.enrolled_students_profiles', name="enrolled_students_profiles"), + url(r'^courses/(?P[^/]+/[^/]+/[^/]+)/instructor_dashboard/api/enrolled_students_features(?P/csv)?$', + 'instructor.views.api.enrolled_students_features', name="enrolled_students_features"), url(r'^courses/(?P[^/]+/[^/]+/[^/]+)/instructor_dashboard/api/profile_distribution$', 'instructor.views.api.profile_distribution', name="profile_distribution"), url(r'^courses/(?P[^/]+/[^/]+/[^/]+)/instructor_dashboard/api/get_student_progress_url$',