Commit a8c5394ea1c81fc14103c68a659af6e0df274c4a

Authored by Zambom
1 parent d57aa261

Changing log view function to store time spent in page [Issue: #231]

courses/views.py
@@ -17,13 +17,14 @@ from .forms import CourseForm, UpdateCourseForm, CategoryCourseForm, SubjectForm @@ -17,13 +17,14 @@ from .forms import CourseForm, UpdateCourseForm, CategoryCourseForm, SubjectForm
17 from .models import Course, Subject, CourseCategory,Topic, SubjectCategory,Activity, CategorySubject 17 from .models import Course, Subject, CourseCategory,Topic, SubjectCategory,Activity, CategorySubject
18 from core.decorators import log_decorator 18 from core.decorators import log_decorator
19 from core.mixins import LogMixin, NotificationMixin 19 from core.mixins import LogMixin, NotificationMixin
  20 +from core.models import Log
20 from users.models import User 21 from users.models import User
21 from files.forms import FileForm 22 from files.forms import FileForm
22 from files.models import TopicFile 23 from files.models import TopicFile
23 from courses.models import Material 24 from courses.models import Material
24 from django.urls import reverse 25 from django.urls import reverse
25 26
26 -from datetime import date 27 +from datetime import date, datetime
27 28
28 class IndexView(LoginRequiredMixin, NotificationMixin, generic.ListView): 29 class IndexView(LoginRequiredMixin, NotificationMixin, generic.ListView):
29 30
@@ -343,6 +344,9 @@ class CourseView(LogMixin, NotificationMixin, generic.DetailView): @@ -343,6 +344,9 @@ class CourseView(LogMixin, NotificationMixin, generic.DetailView):
343 344
344 super(CourseView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) 345 super(CourseView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context)
345 346
  347 + self.request.session['time_spent'] = str(datetime.now())
  348 + self.request.session['log_id'] = Log.objects.latest('id').id
  349 +
346 category_sub = self.kwargs.get('category', None) 350 category_sub = self.kwargs.get('category', None)
347 351
348 if has_role(self.request.user,'system_admin'): 352 if has_role(self.request.user,'system_admin'):
@@ -547,6 +551,9 @@ class SubjectsView(LoginRequiredMixin, LogMixin, generic.ListView): @@ -547,6 +551,9 @@ class SubjectsView(LoginRequiredMixin, LogMixin, generic.ListView):
547 551
548 super(SubjectsView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) 552 super(SubjectsView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context)
549 553
  554 + self.request.session['time_spent'] = str(datetime.now())
  555 + self.request.session['log_id'] = Log.objects.latest('id').id
  556 +
550 return super(SubjectsView, self).dispatch(*args, **kwargs) 557 return super(SubjectsView, self).dispatch(*args, **kwargs)
551 558
552 def get_queryset(self): 559 def get_queryset(self):
@@ -620,6 +627,9 @@ class TopicsView(LoginRequiredMixin, LogMixin, generic.ListView): @@ -620,6 +627,9 @@ class TopicsView(LoginRequiredMixin, LogMixin, generic.ListView):
620 627
621 super(TopicsView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) 628 super(TopicsView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context)
622 629
  630 + self.request.session['time_spent'] = str(datetime.now())
  631 + self.request.session['log_id'] = Log.objects.latest('id').id
  632 +
623 return super(TopicsView, self).dispatch(*args, **kwargs) 633 return super(TopicsView, self).dispatch(*args, **kwargs)
624 634
625 def get_queryset(self): 635 def get_queryset(self):
@@ -635,7 +645,7 @@ class TopicsView(LoginRequiredMixin, LogMixin, generic.ListView): @@ -635,7 +645,7 @@ class TopicsView(LoginRequiredMixin, LogMixin, generic.ListView):
635 activitys = Activity.objects.filter(topic__name = topic.name) 645 activitys = Activity.objects.filter(topic__name = topic.name)
636 students_activit = User.objects.filter(activities__in = Activity.objects.all()) 646 students_activit = User.objects.filter(activities__in = Activity.objects.all())
637 materials = Material.objects.filter(topic = topic) 647 materials = Material.objects.filter(topic = topic)
638 - print(materials) 648 +
639 context['topic'] = topic 649 context['topic'] = topic
640 context['subject'] = topic.subject 650 context['subject'] = topic.subject
641 context['activitys'] = activitys 651 context['activitys'] = activitys
forum/views.py
@@ -14,12 +14,14 @@ from rolepermissions.verifications import has_object_permission @@ -14,12 +14,14 @@ from rolepermissions.verifications import has_object_permission
14 14
15 from .models import Forum, Post, PostAnswer 15 from .models import Forum, Post, PostAnswer
16 from courses.models import Topic 16 from courses.models import Topic
17 -from core.models import Action, Resource 17 +from core.models import Action, Resource, Log
18 18
19 from .forms import ForumForm, PostForm, PostAnswerForm 19 from .forms import ForumForm, PostForm, PostAnswerForm
20 20
21 from core.mixins import LogMixin, NotificationMixin 21 from core.mixins import LogMixin, NotificationMixin
22 22
  23 +import datetime
  24 +
23 """ 25 """
24 Forum Section 26 Forum Section
25 """ 27 """
@@ -230,6 +232,9 @@ class ForumDetailView(LoginRequiredMixin, LogMixin, generic.DetailView): @@ -230,6 +232,9 @@ class ForumDetailView(LoginRequiredMixin, LogMixin, generic.DetailView):
230 232
231 super(ForumDetailView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) 233 super(ForumDetailView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context)
232 234
  235 + self.request.session['time_spent'] = str(datetime.datetime.now())
  236 + self.request.session['log_id'] = Log.objects.latest('id').id
  237 +
233 return super(ForumDetailView, self).dispatch(*args, **kwargs) 238 return super(ForumDetailView, self).dispatch(*args, **kwargs)
234 239
235 def get_context_data(self, **kwargs): 240 def get_context_data(self, **kwargs):
@@ -15,6 +15,7 @@ from .forms import PollForm @@ -15,6 +15,7 @@ from .forms import PollForm
15 from .models import Poll, Answer, AnswersStudent 15 from .models import Poll, Answer, AnswersStudent
16 from core.mixins import LogMixin, NotificationMixin 16 from core.mixins import LogMixin, NotificationMixin
17 from users.models import User 17 from users.models import User
  18 +from core.models import Log
18 from courses.models import Course, Topic 19 from courses.models import Course, Topic
19 20
20 import datetime 21 import datetime
@@ -48,6 +49,9 @@ class ViewPoll(LoginRequiredMixin, LogMixin, generic.DetailView): @@ -48,6 +49,9 @@ class ViewPoll(LoginRequiredMixin, LogMixin, generic.DetailView):
48 49
49 super(ViewPoll, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) 50 super(ViewPoll, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context)
50 51
  52 + self.request.session['time_spent'] = str(datetime.datetime.now())
  53 + self.request.session['log_id'] = Log.objects.latest('id').id
  54 +
51 return poll 55 return poll
52 56
53 def get_context_data(self, **kwargs): 57 def get_context_data(self, **kwargs):
@@ -62,6 +66,7 @@ class ViewPoll(LoginRequiredMixin, LogMixin, generic.DetailView): @@ -62,6 +66,7 @@ class ViewPoll(LoginRequiredMixin, LogMixin, generic.DetailView):
62 context['status'] = False 66 context['status'] = False
63 else: 67 else:
64 context['status'] = answered[0].status 68 context['status'] = answered[0].status
  69 +
65 return context 70 return context
66 71
67 72