export default class EventInfo { days: string; start: number; end: number; constructor(days: string, start: number | string, end: number | string) { if (typeof start === "string") { start = parseInt(start, 10); } if (typeof end === "string") { end = parseInt(end, 10); } this.days = days; this.start = start; this.end = end; } static timeToStr(time: number) { let hour = Math.floor(time / 100); const minute = time % 100; const meridiem = (hour < 12) ? 'AM' : 'PM'; if (hour === 0) { hour = 12; } else if (hour > 12) { hour -= 12; } if (minute < 10) { return `${hour}:0${minute} ${meridiem}`; } return `${hour}:${minute} ${meridiem}`; } get info() { if(this.days === "") { return `WEB`; }else if(this.start === -1 || this.end === -1) { return `${this.days}`; } else { return `${this.days} ${EventInfo.timeToStr(this.start)}-${EventInfo.timeToStr(this.end)}`; } } }