This repository has been archived by the owner on Oct 21, 2018. It is now read-only.
/
lookups.py
executable file
·36 lines (30 loc) · 1.93 KB
/
lookups.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
from ajax_select import LookupChannel
from ecwsp.sis.lookups import StudentLookup
from models import *
from ecwsp.sis.models import SchoolYear
import datetime
class AttendanceStudentLookup(StudentLookup):
def format_item_display(self,student):
output = "<table style=\"border-collapse: collapse;\"><tr><td><img style=\"height:30px;\" src=%s></td><td>%s %s</td></tr></table>" \
% (student.pic.url_70x65, student.fname, student.lname)
output += "<table style=\"width: 100%;\"><tr>"
school_start = SchoolYear.objects.get(active_year=True).start_date
school_end = SchoolYear.objects.get(active_year=True).end_date
attendances = StudentAttendance.objects.filter(student=student, date__range=(school_start, school_end))
absences = attendances.filter(status__absent=True).count()
tardies = attendances.filter(status__tardy=True).count()
output += "<td>Total absences: %s</td></tr><tr><td>Total tardies: %s</td></tr>" % (absences, tardies)
for attendance in attendances:
output += "<tr><td>" + unicode(attendance.date) + " " + unicode(attendance.status) + ": " + unicode(attendance.notes) + "</td></tr>"
output += "</table>"
return output
class AttendanceAddStudentLookup(StudentLookup):
def format_item_display(self,student):
output = "<table style=\"border-collapse: collapse;\"><tr><td><img style=\"height:30px;\" src=%s></td><td>%s %s</td></tr></table>" \
% (student.pic.url_70x65, student.fname, student.lname)
output += "<table style=\"width: 100%;\">"
attendances = StudentAttendance.objects.filter(student=student, date=datetime.datetime.now())
for attendance in attendances:
output += "<tr><td>" + unicode(attendance.date) + " " + unicode(attendance.status) + ": " + unicode(attendance.notes) + "</td></tr>"
output += "</table>"
return output