37 lines
1.4 KiB
JavaScript
37 lines
1.4 KiB
JavaScript
const ParseTools = require("./ParseTools");
|
|
|
|
class Head {
|
|
#data;
|
|
|
|
constructor(data) {
|
|
this.#data = data;
|
|
|
|
this.httpStatus = data.Status ? Number(data.Status) : null;
|
|
|
|
this.from = data.KlaBuDateVon ? ParseTools.parseDateTime(data.KlaBuDateVon) : undefined;
|
|
this.to = data.KlaBuDateBis ? ParseTools.parseDateTime(data.KlaBuDateBis) : undefined;
|
|
|
|
if(data['Von h']) this.fromHour = data['Von h'];
|
|
if(data['Bis h']) this.toHour = data['Bis h'];
|
|
|
|
if(data['Von Wochentag']) this.fromWeekDay = data['Von Wochentag'];
|
|
if(data['Bis Wochentag']) this.toWeekDay = data['Bis Wochentag'];
|
|
|
|
if(data.AktuelleID) this.currentID = Number(data.AktuelleID);
|
|
|
|
if(data.Schuljahr) this.schoolYear = data.Schuljahr;
|
|
|
|
if(data.AnzahlLeistungen) this.totalPerformances = data.AnzahlLeistungen;
|
|
|
|
// Timetable:
|
|
if(ParseTools.isFilled(data.Name)) this.name = data.Name;
|
|
if(ParseTools.isFilled(data.Klasse)) this.class = data.Klasse;
|
|
if(data.Schulnummer) this.schoolNumber = data.Schulnummer;
|
|
if(ParseTools.isFilled(data.InKlasse)) this.inClass = data.InKlasse;
|
|
if(ParseTools.isFilled(data.InKursen)) this.inCourses = data.InKursen;
|
|
if(typeof data.EffPlan !== "undefined") this.effectiveTimetable = !!data.EffPlan;
|
|
if(typeof data.CompactPlan !== "undefined") this.compactTimetable = !!data.CompactPlan;
|
|
}
|
|
}
|
|
|
|
module.exports = Head |