From 7433e08d6181cebc6ece07f8e24782f360db9d1b Mon Sep 17 00:00:00 2001 From: Felipe Bormann Date: Mon, 8 May 2017 14:07:12 -0300 Subject: [PATCH] finished collecting data from bottom left side --- analytics/templates/analytics/general.html | 5 +---- analytics/views.py | 22 +++++++++++++++------- topics/views.py | 1 - 3 files changed, 16 insertions(+), 12 deletions(-) diff --git a/analytics/templates/analytics/general.html b/analytics/templates/analytics/general.html index fe81a9a..a892f88 100644 --- a/analytics/templates/analytics/general.html +++ b/analytics/templates/analytics/general.html @@ -65,10 +65,7 @@
-
-

{% trans "Between" %} 20-20-17 {% trans "and" %} - 20-20-17

-
+
diff --git a/analytics/views.py b/analytics/views.py index d06aa56..a996a0a 100644 --- a/analytics/views.py +++ b/analytics/views.py @@ -9,6 +9,8 @@ from topics.models import Resource from users.models import User from django.http import HttpResponse, JsonResponse from log.models import Log +import operator +from django.utils.translation import ugettext_lazy as _ class GeneralView(generic.TemplateView): @@ -94,10 +96,17 @@ def most_accessed_categories(request): return JsonResponse(categories, safe= False) def most_accessed_resource_kind(request): - resources_names = [cls.__name__ for cls in Resource.__subclasses__()] - print(resources_names) - resources = {} + resources = Resource.objects.distinct() + data = {} + for resource in resources: + key = resource.__dict__['_my_subclass'] + if key in data.keys(): + data[key]['count'] = data[key]['count'] + 1 + else: + data[key] = {'name': key, 'count': 1} + + data = sorted(data.values(), key = lambda x: x['count'], reverse= True) mapping = {} mapping['pdffile'] = str(_('PDF File')) mapping['goals'] = str(_('Topic Goals')) @@ -107,10 +116,9 @@ def most_accessed_resource_kind(request): mapping['ytvideo'] = str(_('YouTube Video')) mapping['webpage'] = str(_('WebPage')) - - - - return JsonResponse(resources, safe = False) + data = [ {'name': mapping[resource['name']] , 'count': resource['count']} for resource in data] + data = data[:5] + return JsonResponse(data, safe=False) def most_active_users(request): diff --git a/topics/views.py b/topics/views.py index b11a215..4c692b2 100644 --- a/topics/views.py +++ b/topics/views.py @@ -20,7 +20,6 @@ from subjects.models import Subject from .models import Topic, Resource from .forms import TopicForm -import operator class CreateView(LoginRequiredMixin, LogMixin, generic.edit.CreateView): log_component = 'topic' -- libgit2 0.21.2