Commit 1c0574a246779c1d3912e88e43094b4c8f72ef94

Authored by Zambom
1 parent e432b151

Changing time_spent to timestamp start and end [Issue: #231]

core/middleware.py
@@ -15,15 +15,15 @@ class TimeSpentMiddleware(object): @@ -15,15 +15,15 @@ class TimeSpentMiddleware(object):
15 if not log_id is None: 15 if not log_id is None:
16 log = get_object_or_404(Log, id = log_id) 16 log = get_object_or_404(Log, id = log_id)
17 17
18 - date_time_click = datetime.strptime(request.session.get('time_spent'), "%Y-%m-%d %H:%M:%S.%f")  
19 - _now = datetime.now() 18 + #date_time_click = datetime.strptime(request.session.get('time_spent'), "%Y-%m-%d %H:%M:%S.%f")
  19 + #_now = datetime.now()
20 20
21 - time_spent = _now - date_time_click 21 + #time_spent = _now - date_time_click
22 22
23 - secs = time_spent.total_seconds()  
24 - hours = int(secs / 3600)  
25 - minutes = int(secs / 60) % 60  
26 - secs = secs % 60 23 + #secs = time_spent.total_seconds()
  24 + #hours = int(secs / 3600)
  25 + #minutes = int(secs / 60) % 60
  26 + #secs = secs % 60
27 27
28 28
29 if type(log.context) == dict: 29 if type(log.context) == dict:
@@ -31,12 +31,12 @@ class TimeSpentMiddleware(object): @@ -31,12 +31,12 @@ class TimeSpentMiddleware(object):
31 else: 31 else:
32 log_context = json.loads(log.context) 32 log_context = json.loads(log.context)
33 33
34 - time = {}  
35 - time['hours'] = hours  
36 - time['minutes'] = minutes  
37 - time['seconds'] = secs 34 + #time = {}
  35 + #time['hours'] = hours
  36 + #time['minutes'] = minutes
  37 + #time['seconds'] = secs
38 38
39 - log_context['time_spent'] = time 39 + log_context['timestamp_end'] = str(datetime.now())
40 40
41 log.context = log_context 41 log.context = log_context
42 42
courses/views.py
@@ -345,10 +345,10 @@ class CourseView(LogMixin, NotificationMixin, generic.DetailView): @@ -345,10 +345,10 @@ class CourseView(LogMixin, NotificationMixin, generic.DetailView):
345 self.log_context['course_slug'] = course.slug 345 self.log_context['course_slug'] = course.slug
346 self.log_context['course_category_id'] = course.category.id 346 self.log_context['course_category_id'] = course.category.id
347 self.log_context['course_category_name'] = course.category.name 347 self.log_context['course_category_name'] = course.category.name
  348 + self.log_context['timestamp_start'] = str(datetime.now())
348 349
349 super(CourseView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) 350 super(CourseView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context)
350 351
351 - self.request.session['time_spent'] = str(datetime.now())  
352 self.request.session['log_id'] = Log.objects.latest('id').id 352 self.request.session['log_id'] = Log.objects.latest('id').id
353 353
354 category_sub = self.kwargs.get('category', None) 354 category_sub = self.kwargs.get('category', None)
@@ -552,10 +552,10 @@ class SubjectsView(LoginRequiredMixin, LogMixin, generic.ListView): @@ -552,10 +552,10 @@ class SubjectsView(LoginRequiredMixin, LogMixin, generic.ListView):
552 self.log_context['course_slug'] = subject.course.slug 552 self.log_context['course_slug'] = subject.course.slug
553 self.log_context['course_category_id'] = subject.course.category.id 553 self.log_context['course_category_id'] = subject.course.category.id
554 self.log_context['course_category_name'] = subject.course.category.name 554 self.log_context['course_category_name'] = subject.course.category.name
  555 + self.log_context['timestamp_start'] = str(datetime.now())
555 556
556 super(SubjectsView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) 557 super(SubjectsView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context)
557 558
558 - self.request.session['time_spent'] = str(datetime.now())  
559 self.request.session['log_id'] = Log.objects.latest('id').id 559 self.request.session['log_id'] = Log.objects.latest('id').id
560 560
561 return super(SubjectsView, self).dispatch(*args, **kwargs) 561 return super(SubjectsView, self).dispatch(*args, **kwargs)
@@ -657,10 +657,10 @@ class TopicsView(LoginRequiredMixin, LogMixin, generic.ListView): @@ -657,10 +657,10 @@ class TopicsView(LoginRequiredMixin, LogMixin, generic.ListView):
657 self.log_context['course_slug'] = topic.subject.course.slug 657 self.log_context['course_slug'] = topic.subject.course.slug
658 self.log_context['course_category_id'] = topic.subject.course.category.id 658 self.log_context['course_category_id'] = topic.subject.course.category.id
659 self.log_context['course_category_name'] = topic.subject.course.category.name 659 self.log_context['course_category_name'] = topic.subject.course.category.name
  660 + self.log_context['timestamp_start'] = str(datetime.now())
660 661
661 super(TopicsView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) 662 super(TopicsView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context)
662 663
663 - self.request.session['time_spent'] = str(datetime.now())  
664 self.request.session['log_id'] = Log.objects.latest('id').id 664 self.request.session['log_id'] = Log.objects.latest('id').id
665 665
666 return super(TopicsView, self).dispatch(*args, **kwargs) 666 return super(TopicsView, self).dispatch(*args, **kwargs)
@@ -1003,10 +1003,10 @@ class FileMaterialView(LoginRequiredMixin, LogMixin, generic.DetailView): @@ -1003,10 +1003,10 @@ class FileMaterialView(LoginRequiredMixin, LogMixin, generic.DetailView):
1003 self.log_context['course_slug'] = file.topic.subject.course.slug 1003 self.log_context['course_slug'] = file.topic.subject.course.slug
1004 self.log_context['course_category_id'] = file.topic.subject.course.category.id 1004 self.log_context['course_category_id'] = file.topic.subject.course.category.id
1005 self.log_context['course_category_name'] = file.topic.subject.course.category.name 1005 self.log_context['course_category_name'] = file.topic.subject.course.category.name
  1006 + self.log_context['timestamp_start'] = str(datetime.now())
1006 1007
1007 super(FileMaterialView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) 1008 super(FileMaterialView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context)
1008 1009
1009 - self.request.session['time_spent'] = str(datetime.now())  
1010 self.request.session['log_id'] = Log.objects.latest('id').id 1010 self.request.session['log_id'] = Log.objects.latest('id').id
1011 1011
1012 return super(FileMaterialView, self).dispatch(*args, **kwargs) 1012 return super(FileMaterialView, self).dispatch(*args, **kwargs)
@@ -59,10 +59,10 @@ class ViewExam(LoginRequiredMixin, LogMixin, generic.DetailView): @@ -59,10 +59,10 @@ class ViewExam(LoginRequiredMixin, LogMixin, generic.DetailView):
59 self.log_context['course_slug'] = exam.topic.subject.course.slug 59 self.log_context['course_slug'] = exam.topic.subject.course.slug
60 self.log_context['course_category_id'] = exam.topic.subject.course.category.id 60 self.log_context['course_category_id'] = exam.topic.subject.course.category.id
61 self.log_context['course_category_name'] = exam.topic.subject.course.category.name 61 self.log_context['course_category_name'] = exam.topic.subject.course.category.name
  62 + self.request.session['time_spent'] = str(datetime.now())
62 63
63 super(ViewExam, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) 64 super(ViewExam, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context)
64 65
65 - self.request.session['time_spent'] = str(datetime.now())  
66 self.request.session['log_id'] = Log.objects.latest('id').id 66 self.request.session['log_id'] = Log.objects.latest('id').id
67 67
68 return context 68 return context
@@ -318,6 +318,7 @@ class AnswerStudentExam(LoginRequiredMixin, LogMixin, generic.CreateView): @@ -318,6 +318,7 @@ class AnswerStudentExam(LoginRequiredMixin, LogMixin, generic.CreateView):
318 minutes = int(secs / 60) % 60 318 minutes = int(secs / 60) % 60
319 secs = secs % 60 319 secs = secs % 60
320 320
  321 + self.log_context['timestamp_end'] = str(datetime.now())
321 self.log_context['time_spent'] = {} 322 self.log_context['time_spent'] = {}
322 self.log_context['time_spent']['hours'] = hours 323 self.log_context['time_spent']['hours'] = hours
323 self.log_context['time_spent']['minutes'] = minutes 324 self.log_context['time_spent']['minutes'] = minutes
@@ -346,6 +347,7 @@ class AnswerStudentExam(LoginRequiredMixin, LogMixin, generic.CreateView): @@ -346,6 +347,7 @@ class AnswerStudentExam(LoginRequiredMixin, LogMixin, generic.CreateView):
346 context['answers'] = answers 347 context['answers'] = answers
347 context['keys'] = keys 348 context['keys'] = keys
348 349
  350 + self.log_context['timestamp_start'] = str(datetime.now())
349 self.request.session['time_spent'] = str(datetime.now()) 351 self.request.session['time_spent'] = str(datetime.now())
350 352
351 return context 353 return context
forum/views.py
@@ -229,10 +229,10 @@ class ForumDetailView(LoginRequiredMixin, LogMixin, generic.DetailView): @@ -229,10 +229,10 @@ class ForumDetailView(LoginRequiredMixin, LogMixin, generic.DetailView):
229 self.log_context['course_slug'] = forum.topic.subject.course.slug 229 self.log_context['course_slug'] = forum.topic.subject.course.slug
230 self.log_context['course_category_id'] = forum.topic.subject.course.category.id 230 self.log_context['course_category_id'] = forum.topic.subject.course.category.id
231 self.log_context['course_category_name'] = forum.topic.subject.course.category.name 231 self.log_context['course_category_name'] = forum.topic.subject.course.category.name
  232 + self.log_context['timestamp_start'] = str(datetime.now())
232 233
233 super(ForumDetailView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) 234 super(ForumDetailView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context)
234 235
235 - self.request.session['time_spent'] = str(datetime.datetime.now())  
236 self.request.session['log_id'] = Log.objects.latest('id').id 236 self.request.session['log_id'] = Log.objects.latest('id').id
237 237
238 return super(ForumDetailView, self).dispatch(*args, **kwargs) 238 return super(ForumDetailView, self).dispatch(*args, **kwargs)
links/views.py
@@ -244,6 +244,7 @@ class ViewLink(LoginRequiredMixin, HasRoleMixin, LogMixin, generic.DetailView): @@ -244,6 +244,7 @@ class ViewLink(LoginRequiredMixin, HasRoleMixin, LogMixin, generic.DetailView):
244 self.log_context['course_slug'] = link.topic.subject.course.slug 244 self.log_context['course_slug'] = link.topic.subject.course.slug
245 self.log_context['course_category_id'] = link.topic.subject.course.category.id 245 self.log_context['course_category_id'] = link.topic.subject.course.category.id
246 self.log_context['course_category_name'] = link.topic.subject.course.category.name 246 self.log_context['course_category_name'] = link.topic.subject.course.category.name
  247 + self.log_context['timestamp_start'] = str(datetime.now())
247 248
248 super(ViewLink, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) 249 super(ViewLink, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context)
249 250
@@ -48,10 +48,10 @@ class ViewPoll(LoginRequiredMixin, LogMixin, generic.DetailView): @@ -48,10 +48,10 @@ class ViewPoll(LoginRequiredMixin, LogMixin, generic.DetailView):
48 self.log_context['course_slug'] = poll.topic.subject.course.slug 48 self.log_context['course_slug'] = poll.topic.subject.course.slug
49 self.log_context['course_category_id'] = poll.topic.subject.course.category.id 49 self.log_context['course_category_id'] = poll.topic.subject.course.category.id
50 self.log_context['course_category_name'] = poll.topic.subject.course.category.name 50 self.log_context['course_category_name'] = poll.topic.subject.course.category.name
  51 + self.log_context['timestamp_start'] = str(datetime.now())
51 52
52 super(ViewPoll, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) 53 super(ViewPoll, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context)
53 54
54 - self.request.session['time_spent'] = str(datetime.datetime.now())  
55 self.request.session['log_id'] = Log.objects.latest('id').id 55 self.request.session['log_id'] = Log.objects.latest('id').id
56 56
57 return poll 57 return poll
@@ -315,6 +315,7 @@ class AnswerStudentPoll(LoginRequiredMixin, LogMixin, generic.CreateView): @@ -315,6 +315,7 @@ class AnswerStudentPoll(LoginRequiredMixin, LogMixin, generic.CreateView):
315 def dispatch(self, *args, **kwargs): 315 def dispatch(self, *args, **kwargs):
316 if self.request.method == 'GET': 316 if self.request.method == 'GET':
317 self.request.session['time_spent'] = str(datetime.datetime.now()) 317 self.request.session['time_spent'] = str(datetime.datetime.now())
  318 + self.log_context['timestamp_start'] = str(datetime.now())
318 319
319 return super(AnswerStudentPoll, self).dispatch(*args, **kwargs) 320 return super(AnswerStudentPoll, self).dispatch(*args, **kwargs)
320 321
@@ -344,6 +345,7 @@ class AnswerStudentPoll(LoginRequiredMixin, LogMixin, generic.CreateView): @@ -344,6 +345,7 @@ class AnswerStudentPoll(LoginRequiredMixin, LogMixin, generic.CreateView):
344 self.log_context['course_slug'] = poll.topic.subject.course.slug 345 self.log_context['course_slug'] = poll.topic.subject.course.slug
345 self.log_context['course_category_id'] = poll.topic.subject.course.category.id 346 self.log_context['course_category_id'] = poll.topic.subject.course.category.id
346 self.log_context['course_category_name'] = poll.topic.subject.course.category.name 347 self.log_context['course_category_name'] = poll.topic.subject.course.category.name
  348 + self.log_context['timestamp_end'] = str(datetime.now())
347 349
348 date_time_click = datetime.datetime.strptime(self.request.session.get('time_spent'), "%Y-%m-%d %H:%M:%S.%f") 350 date_time_click = datetime.datetime.strptime(self.request.session.get('time_spent'), "%Y-%m-%d %H:%M:%S.%f")
349 _now = datetime.datetime.now() 351 _now = datetime.datetime.now()