From a9a73561f434972515984eff34d7d30b7c3afddf Mon Sep 17 00:00:00 2001 From: John Hess Date: Mon, 27 Aug 2012 19:05:00 -0400 Subject: [PATCH 1/2] updated admin_dashboard to show count of unique students --- lms/djangoapps/dashboard/views.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/lms/djangoapps/dashboard/views.py b/lms/djangoapps/dashboard/views.py index c4446bceaa..a1a3461953 100644 --- a/lms/djangoapps/dashboard/views.py +++ b/lms/djangoapps/dashboard/views.py @@ -21,11 +21,16 @@ def dashboard(request): if not request.user.is_staff: raise Http404 - query = "select count(user_id) as students, course_id from student_courseenrollment group by course_id order by students desc" + queries=[] + queries.append("select count(user_id) as students, course_id from student_courseenrollment group by course_id order by students desc;") + queries.append("select count(distinct user_id) as unique_students from student_courseenrollment;") from django.db import connection cursor = connection.cursor() - cursor.execute(query) - results = dictfetchall(cursor) + results =[] + + for query in queries: + cursor.execute(query) + results.append(dictfetchall(cursor)) return HttpResponse(json.dumps(results, indent=4)) From 2cf4b28cf721b96704d0c82387ff371c56fce4c9 Mon Sep 17 00:00:00 2001 From: John Hess Date: Mon, 27 Aug 2012 19:22:19 -0400 Subject: [PATCH 2/2] added additional query to show number of users with any given number of registrations (power users) --- lms/djangoapps/dashboard/views.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lms/djangoapps/dashboard/views.py b/lms/djangoapps/dashboard/views.py index a1a3461953..964b3fac4a 100644 --- a/lms/djangoapps/dashboard/views.py +++ b/lms/djangoapps/dashboard/views.py @@ -24,7 +24,8 @@ def dashboard(request): queries=[] queries.append("select count(user_id) as students, course_id from student_courseenrollment group by course_id order by students desc;") queries.append("select count(distinct user_id) as unique_students from student_courseenrollment;") - + queries.append("select registrations, count(registrations) from (select count(user_id) as registrations from student_courseenrollment group by user_id) as registrations_per_user group by registrations;") + from django.db import connection cursor = connection.cursor() results =[]