VHD.time = new BetaJS.Properties.Properties; //VHD.main.when = "February 15, 2017"; (function () { function fix(time) { try { time = time.split(":"); var hour = time[0]; var minute = time[1].replace("am", "").replace("pm", ""); if (time[1].indexOf("pm") >= 0) hour = parseInt(hour, 10) + 12; return hour + ":" + minute + ":00"; } catch (e) { return "00:00:01"; } }; var schedule_start = fix(VHD.schedule[0].time); var schedule_end = fix(VHD.schedule[VHD.schedule.length - 1].time); var hack_start = fix(VHD.schedule.find(function (item) { return item.tag === "start"; }).time); var hack_end = fix(VHD.schedule.find(function (item) { return item.tag === "end"; }).time); var dateOf = function (x) { try { return (new Date(x)).getTime(); } catch (e) { return BetaJS.Time.now(); } }; function update_time() { VHD.time.set("now", BetaJS.Time.now()); VHD.time.set("vhd_day_start", dateOf(VHD.main.when + " 00:00:01 GMT-0500")); VHD.time.set("vhd_day_end", dateOf(VHD.main.when + " 23:59:59 GMT-0500")); VHD.time.set("vhd_day_schedule_start", dateOf(VHD.main.when + " " + schedule_start + " GMT-0500")); VHD.time.set("vhd_day_schedule_end", dateOf(VHD.main.when + " " + schedule_end + " GMT-0500")); VHD.time.set("vhd_day_hack_start", dateOf(VHD.main.when + " " + hack_start + " GMT-0500")); VHD.time.set("vhd_day_hack_end", dateOf(VHD.main.when + " " + hack_end + " GMT-0500")); VHD.time.set("sponsorship_deadline", dateOf(VHD.main.sponsorship_deadline)); VHD.time.set("is_before_sponsorship_deadline", VHD.time.get("now") <= VHD.time.get("sponsorship_deadline")); VHD.time.set("is_after_sponsorship_deadline", VHD.time.get("now") >= VHD.time.get("sponsorship_deadline")); VHD.time.set("is_after_day_start", VHD.time.get("now") >= VHD.time.get("vhd_day_start")); VHD.time.set("is_before_schedule_start", VHD.time.get("now") < VHD.time.get("vhd_day_schedule_start")); VHD.time.set("is_after_schedule_start", VHD.time.get("now") >= VHD.time.get("vhd_day_schedule_start")); VHD.time.set("is_after_hack_start", VHD.time.get("now") >= VHD.time.get("vhd_day_hack_start")); VHD.time.set("is_before_hack_end", VHD.time.get("now") < VHD.time.get("vhd_day_hack_end")); VHD.time.set("is_before_day_end", VHD.time.get("now") < VHD.time.get("vhd_day_end")); VHD.time.set("is_after_day_end", VHD.time.get("now") >= VHD.time.get("vhd_day_end")); } update_time(); setInterval(function () { update_time(); }, 500) }).call(this);