From 9b905ae7298317f6dc65c58db390ed1a4fbcfeeb Mon Sep 17 00:00:00 2001 From: Sarina Canelake Date: Thu, 12 Mar 2015 10:19:20 -0400 Subject: [PATCH] Remove everything gated by ENABLE_INSTRUCTOR_ANALYTICS flag --- cms/envs/bok_choy.env.json | 1 - lms/envs/bok_choy.env.json | 1 - lms/envs/common.py | 6 +- lms/envs/dev.py | 1 - .../legacy_instructor_dashboard.html | 200 ------------------ .../instructor_analytics.html | 43 ---- 6 files changed, 1 insertion(+), 251 deletions(-) diff --git a/cms/envs/bok_choy.env.json b/cms/envs/bok_choy.env.json index 3d73b109cb..d4a648394e 100644 --- a/cms/envs/bok_choy.env.json +++ b/cms/envs/bok_choy.env.json @@ -70,7 +70,6 @@ "CUSTOM_COURSE_URLS": true }, "ENABLE_DISCUSSION_SERVICE": true, - "ENABLE_INSTRUCTOR_ANALYTICS": true, "ENABLE_S3_GRADE_DOWNLOADS": true, "ENTRANCE_EXAMS": true, "MILESTONES_APP": true, diff --git a/lms/envs/bok_choy.env.json b/lms/envs/bok_choy.env.json index db5c28e966..2d35715fa7 100644 --- a/lms/envs/bok_choy.env.json +++ b/lms/envs/bok_choy.env.json @@ -79,7 +79,6 @@ "ENABLE_PAYMENT_FAKE": true, "ENABLE_VERIFIED_CERTIFICATES": true, "ENABLE_DISCUSSION_SERVICE": true, - "ENABLE_INSTRUCTOR_ANALYTICS": true, "ENABLE_S3_GRADE_DOWNLOADS": true, "ENABLE_THIRD_PARTY_AUTH": true, "ENABLE_COMBINED_LOGIN_REGISTRATION": true, diff --git a/lms/envs/common.py b/lms/envs/common.py index 1503e61cca..4d1e76ce68 100644 --- a/lms/envs/common.py +++ b/lms/envs/common.py @@ -169,10 +169,6 @@ FEATURES = { # for all Mongo-backed courses. 'REQUIRE_COURSE_EMAIL_AUTH': True, - # Analytics experiments - shows instructor analytics tab in LMS instructor dashboard. - # Enabling this feature depends on installation of a separate analytics server. - 'ENABLE_INSTRUCTOR_ANALYTICS': False, - # enable analytics server. # WARNING: THIS SHOULD ALWAYS BE SET TO FALSE UNDER NORMAL # LMS OPERATION. See analytics.py for details about what @@ -341,7 +337,7 @@ FEATURES = { # Display demographic data on the analytics tab in the instructor dashboard. 'DISPLAY_ANALYTICS_DEMOGRAPHICS': True, - # Enable display of enrollment counts in instructor and legacy analytics dashboard + # Enable display of enrollment counts in instructor dash, analytics section 'DISPLAY_ANALYTICS_ENROLLMENTS': True, # Show the mobile app links in the footer diff --git a/lms/envs/dev.py b/lms/envs/dev.py index a0e3dee83f..cfb864375c 100644 --- a/lms/envs/dev.py +++ b/lms/envs/dev.py @@ -30,7 +30,6 @@ FEATURES['SUBDOMAIN_BRANDING'] = True FEATURES['FORCE_UNIVERSITY_DOMAIN'] = None # show all university courses if in dev (ie don't use HTTP_HOST) FEATURES['ENABLE_MANUAL_GIT_RELOAD'] = True FEATURES['ENABLE_PSYCHOMETRICS'] = False # real-time psychometrics (eg item response theory analysis in instructor dashboard) -FEATURES['ENABLE_INSTRUCTOR_ANALYTICS'] = True FEATURES['ENABLE_SERVICE_STATUS'] = True FEATURES['ENABLE_INSTRUCTOR_EMAIL'] = True # Enable email for all Studio courses FEATURES['REQUIRE_COURSE_EMAIL_AUTH'] = False # Give all courses email (don't require django-admin perms) diff --git a/lms/templates/courseware/legacy_instructor_dashboard.html b/lms/templates/courseware/legacy_instructor_dashboard.html index 7cf15e4416..2aa0376a9e 100644 --- a/lms/templates/courseware/legacy_instructor_dashboard.html +++ b/lms/templates/courseware/legacy_instructor_dashboard.html @@ -159,9 +159,6 @@ function goto( mode) %if show_email_tab: | ${_("Email")} %endif - %if settings.FEATURES.get('ENABLE_INSTRUCTOR_ANALYTICS'): - | ${_("Analytics")} - %endif %if settings.FEATURES.get('CLASS_DASHBOARD'): | ${_("Metrics")} %endif @@ -402,203 +399,6 @@ function goto( mode) ##----------------------------------------------------------------------------- -%if modeflag.get('Analytics'): - - %if not any(analytics_results.values()): -

${_("No Analytics are available at this time.")}

- %endif - - %if analytics_results.get("StudentsDropoffPerDay"): -

- ${_("Student activity day by day")} - (${analytics_results["StudentsDropoffPerDay"]['time']}) -

-
- - - - - - %for row in analytics_results['StudentsDropoffPerDay']['data']: - - ## For now, just discard the non-date portion - - - - %endfor -
${_("Day")}${_("Students")}
${row['last_day'].split("T")[0]}${row['num_students']}
-
- %endif -
- %if analytics_results.get("ProblemGradeDistribution"): -

- ${_("Score distribution for problems")} - (${analytics_results["ProblemGradeDistribution"]['time']}) -

-
- - - - - - - %for row in analytics_results['ProblemGradeDistribution']['data']: - - - - %endfor - - %endfor -
${_("Problem")}${_("Max")}${_("Points Earned (Num Students)")}
${row['block_id']}${max(grade_record['max_grade'] for grade_record in row["grade_info"])} - %for grade_record in row["grade_info"]: - - %if isinstance(grade_record["grade"], float): - ${"{grade:.2f}".format(**grade_record)} - %else: - ${"{grade}".format(**grade_record)} - %endif - (${grade_record["num_students"]}) -
-
- %endif -%endif - -%if modeflag.get('Metrics'): - %if not any (metrics_results.values()): -

${_("There is no data available to display at this time.")}

- %else: - <%namespace name="d3_stacked_bar_graph" file="/class_dashboard/d3_stacked_bar_graph.js"/> - <%namespace name="all_section_metrics" file="/class_dashboard/all_section_metrics.js"/> - - - -
- -

${_("Loading the latest graphs for you; depending on your class size, this may take a few minutes.")}

- - %for i in range(0,len(metrics_results['section_display_name'])): -
-

${_("Section:")} ${metrics_results['section_display_name'][i]}

-
-
-

${_("Count of Students that Opened a Subsection")}

-

${_("Loading")}

-
-
-

${_("Grade Distribution per Problem")}

- %if not metrics_results['section_has_problem'][i]: -

${_("There are no problems in this section.")}

- %else: -

${_("Loading")}

- %endif -
-
- %endfor - - - %endif -%endif - -%if modeflag.get('Analytics In Progress'): - - ##This is not as helpful as it could be -- let's give full point distribution - ##instead. - %if analytics_results.get("StudentsPerProblemCorrect"): -

- ${_("Students answering correctly")} - (${analytics_results["StudentsPerProblemCorrect"]['time']}) -

-
- - - - - - %for row in analytics_results['StudentsPerProblemCorrect']['data']: - - - - - %endfor -
${_("Problem")}${_("Number of students")}
${row['module_id'].split('/')[-1]}${row['count']}
-
- %endif - -

- ${_("Student distribution per country, all courses, Sep 12 to Oct 17, 1 server (shown here as an example):")} -

- -
-
-
- -
-
- - -##

Number of students who dropped off per day before becoming inactive:

-## -## % if dropoff_per_day is not None: -## % if dropoff_per_day['status'] == 'success': -##
-## -## -## % for k,v in dropoff_per_day['data'].items(): -## -## % endfor -##
DayNumber of students
${k} ${v}
-##
-## % else: -## ${dropoff_per_day['error']} -## % endif -## % else: -## null data -## % endif -##

-## - - -##

-##

Daily activity (online version):

-## -## -## % for k,v in daily_activity_json['data'].items(): -## -## -## -## % endfor -##
DayNumber of students
${k} ${v}
-##

- - -%endif - -##----------------------------------------------------------------------------- - %if datatable and modeflag.get('Psychometrics') is None:
diff --git a/lms/templates/instructor/instructor_dashboard_2/instructor_analytics.html b/lms/templates/instructor/instructor_dashboard_2/instructor_analytics.html index c75501cd0b..46bb8d72d9 100644 --- a/lms/templates/instructor/instructor_dashboard_2/instructor_analytics.html +++ b/lms/templates/instructor/instructor_dashboard_2/instructor_analytics.html @@ -1,49 +1,6 @@ <%! from django.utils.translation import ugettext as _ %> <%page args="section_data"/> - - -%if settings.FEATURES['ENABLE_INSTRUCTOR_ANALYTICS']: - - -
-
- -
-%endif - %if settings.FEATURES['DISPLAY_ANALYTICS_DEMOGRAPHICS']: