IB Student Clearance Program
This repository has been archived on 2023-12-11. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
Abdulkadir Furkan Şanlı 820936ae98 Fix select_final_time().
2019-01-11 11:54:57 +01:00
.gitignore Handle ValueError. 2018-12-26 21:03:01 +01:00
ib-clearance.py Fix select_final_time(). 2019-01-11 11:54:57 +01:00
LICENSE Add LICENSE 2018-10-23 14:59:11 +00:00
README.md Update README.md 2019-01-06 10:11:45 +01:00
TODO.md Update TODO.md 2019-01-06 09:28:46 +00:00

ib-clearance

ib-clearance is a program which helps schools manage the entrance and exiting of their IB Diploma Program students. Due to the unique nature of IB students' timetables, the program helps to automatically check individual timetables and give clearance to students who have finished for the day.

Building

The code is currently designed to run on Python 3.6.*.

Binaries can be built using the pyinstaller package (pyinstaller --onefile ib-clearance.py).

Database specification

The program requires a SQLite database database.db in the working directory, containing data for all classes.

database.db must contain:

Table Description
students Contains students' names, ID numbers and subject preferences
timetable Timetable information (lessons)

students

Column Data type Description
id INTEGER Student ID number used in program
student_class INTEGER IB class number (e.g. 1, 2)
name TEXT Full name of student
g1 TEXT Group 1 subject ID
g2 TEXT Group 2 subject ID
g3 TEXT Group 3 subject ID
g4 TEXT Group 4 subject ID
g5 TEXT Group 5 subject ID
g6 TEXT Group 6 subject ID
other TEXT ID(s) of other class(es) taken, space seperated

timetable

Column Data type Description
lesson_class INTEGER IB class which takes lesson (e.g. 1)
day TEXT Day of the week (e.g. monday)
end_time TEXT Ending time of lesson (e.g. 09:55, 13:05)
lesson_id TEXT Subject ID of the lesson (e.g. tok)

Subject IDs

Subject IDs may be anything, as long as consistency is maintained throughout the tables.

License

Copyright (C) 2018 Abdulkadir Furkan Şanlı

ib-clearance is made available under the Apache License 2.0.