Fix issue where Student did'n have a period_id
This commit is contained in:
parent
863f3c061e
commit
cc311a9424
@ -41,6 +41,6 @@ class Period(models.Model):
|
||||
return f'{self.clocked_in}: {self.student.user.first_name} {self.student.user.last_name}'
|
||||
|
||||
def save(self, *args, **kwargs):
|
||||
if isinstance(self.clocked_out, datetime):
|
||||
if self.clocked_out != None:
|
||||
self.duration = self.clocked_out - self.clocked_in
|
||||
super(Period, self).save(*args, **kwargs)
|
||||
|
||||
@ -31,9 +31,10 @@ class AttendanceOverview(LoginRequiredMixin, TemplateView):
|
||||
context['student_list'] = Student.objects.filter(department=self.request.user.instructor.department)
|
||||
context['period_list'] = Period.objects.order_by('-clocked_in')
|
||||
elif hasattr(self.request.user, 'student'):
|
||||
student = self.request.user.student
|
||||
# sum all duration fields for student
|
||||
periods_duration_sum = Period.objects.filter(
|
||||
student = self.request.user.student
|
||||
student = student
|
||||
).filter(
|
||||
clocked_in__year=timezone.now().year
|
||||
).filter(
|
||||
@ -46,14 +47,15 @@ class AttendanceOverview(LoginRequiredMixin, TemplateView):
|
||||
hours = round((periods_duration_sum['total_duration'].total_seconds() / 3600), 2)
|
||||
|
||||
context['period_list'] = Period.objects.filter(
|
||||
student=self.request.user.student
|
||||
student=student
|
||||
).filter(
|
||||
clocked_in__year=timezone.now().year
|
||||
).filter(
|
||||
clocked_in__month=timezone.now().month
|
||||
).order_by('-clocked_in')
|
||||
context['period_total'] = hours
|
||||
context['current_period'] = Period.objects.get(pk=self.request.user.student.current_period_id)
|
||||
if student.current_period_id != None:
|
||||
context['current_period'] = Period.objects.get(pk=student.current_period_id)
|
||||
return context
|
||||
|
||||
class AttendanceUpdateView(LoginRequiredMixin, FormView):
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user