Commit 1c0574a246779c1d3912e88e43094b4c8f72ef94
1 parent
e432b151
Exists in
master
and in
5 other branches
Changing time_spent to timestamp start and end [Issue: #231]
Showing
6 changed files
with
24 additions
and
19 deletions
Show diff stats
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) |
exam/views.py
| @@ -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 |
poll/views.py
| @@ -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() |