diff options
Diffstat (limited to 'src/models')
| -rw-r--r-- | src/models/EventInfo.ts (renamed from src/models/EventInfo.js) | 17 | ||||
| -rw-r--r-- | src/models/Lab.ts (renamed from src/models/Lab.js) | 6 | ||||
| -rw-r--r-- | src/models/PeerTeacher.ts (renamed from src/models/PeerTeacher.js) | 14 |
3 files changed, 30 insertions, 7 deletions
diff --git a/src/models/EventInfo.js b/src/models/EventInfo.ts index c1624a8..4493162 100644 --- a/src/models/EventInfo.js +++ b/src/models/EventInfo.ts @@ -1,13 +1,19 @@ export default class EventInfo { - constructor(days = '', start = 0, end = 0) { + days: string; + + start: number; + + end: number; + + constructor(days: string = '', start = 0, end = 0) { this.days = days; this.start = start; this.end = end; } - static timeToStr(time) { + static timeToStr(time: number) { let hour = Math.floor(time / 100); - let minute = time % 100; + const minute = time % 100; const meridiem = (hour < 12) ? 'AM' : 'PM'; if (hour === 0) { @@ -17,13 +23,12 @@ export default class EventInfo { } if (minute < 10) { - minute = `0${minute}`; + return `${hour}:0${minute} ${meridiem}`; } - return `${hour}:${minute} ${meridiem}`; } - conflictsWith(event) { + conflictsWith(event: EventInfo) { const daysConflict = event.days.match(new RegExp(`[${this.days}]`)); if (daysConflict) { diff --git a/src/models/Lab.js b/src/models/Lab.ts index 2e4412d..a6972ef 100644 --- a/src/models/Lab.js +++ b/src/models/Lab.ts @@ -1,6 +1,12 @@ import EventInfo from '@/models/EventInfo'; export default class Lab { + course: number; + + section: number; + + event: EventInfo; + constructor(course = 0, section = 0, event = new EventInfo()) { this.course = course; this.section = section; diff --git a/src/models/PeerTeacher.js b/src/models/PeerTeacher.ts index 00a2f0d..f387431 100644 --- a/src/models/PeerTeacher.js +++ b/src/models/PeerTeacher.ts @@ -1,4 +1,16 @@ +import EventInfo from './EventInfo'; + export default class PeerTeacher { + firstname: string; + + lastname: string; + + uin: number; + + events: EventInfo[]; + + assignedLabs: Set<string>; + constructor(firstname = '', lastname = '', uin = 0) { this.firstname = firstname; this.lastname = lastname; @@ -7,7 +19,7 @@ export default class PeerTeacher { this.assignedLabs = new Set(); } - conflictsWith(event) { + conflictsWith(event: EventInfo) { let conflicts = false; this.events.every((item) => { if (item.conflictsWith(event)) { |
