Skip to content

Commit aa473c9

Browse files
Adds Date and Time, update render. (#2916)
* Adds date and time to game, updates gif render * new image * Adds blinking colon animation to the time. * Fixes formatting issue. * Updates code to add to grab device time zone, defaults to US/Pacific * Fixes linting issues and updates render
1 parent 25439ac commit aa473c9

File tree

2 files changed

+26
-5
lines changed

2 files changed

+26
-5
lines changed

apps/vgknextgame/vgk_next_game.gif

8.24 KB
Loading

apps/vgknextgame/vgk_next_game.star

+26-5
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,18 @@ timestamp = time.now().format("2006-01-02")
1414

1515
vgkNextGameWeek = "https://api-web.nhle.com/v1/club-schedule/VGK/week/" + timestamp
1616

17-
def main():
17+
DEFAULT_TIMEZONE = "US/Pacific"
18+
19+
def main(config):
20+
device_tz = config.get("$tz", DEFAULT_TIMEZONE)
21+
22+
def convertTime(utcTimestamp):
23+
t = time.parse_time(utcTimestamp)
24+
pst = t.in_location(device_tz)
25+
pst.format("2006-01-02T15:04:05Z07:00")
26+
27+
return pst.format("3:04PM")
28+
1829
response = http.get(vgkNextGameWeek.format(ttl_seconds = 3600))
1930

2031
d = response.json()
@@ -24,13 +35,16 @@ def main():
2435

2536
if len(d["games"]) == 0:
2637
nextStartDate = "> 1 week"
38+
nextStartTime = ""
2739
nextHomeTeam = ""
2840
nextAwayTeam = ""
2941
at = "Go Knights"
3042
else:
3143
nextStartDate = d["games"][0]["gameDate"]
44+
nextStartTime = convertTime(d["games"][0]["startTimeUTC"])
45+
3246
nextStartDate = nextStartDate.split("-")
33-
year = nextStartDate.pop(0)
47+
year = nextStartDate.pop(0)[2:4]
3448
nextStartDate.append(year)
3549
nextStartDate = "-".join(nextStartDate)
3650

@@ -41,7 +55,8 @@ def main():
4155
img = base64.decode("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")
4256

4357
return render.Root(
44-
render.Box(
58+
delay = 500,
59+
child = render.Box(
4560
child = render.Row(
4661
main_align = "center",
4762
cross_align = "center",
@@ -52,9 +67,15 @@ def main():
5267
render.Box(
5368
child = render.Column(
5469
children = [
55-
render.Text(content = "NEXT GAME:", font = "tom-thumb", color = "B4975A"),
70+
render.Text(content = "NEXT GAME:", font = "tom-thumb", color = "C8102E"),
71+
render.Text(content = "" + nextAwayTeam + at + nextHomeTeam, font = "tom-thumb", color = "B4975A"),
5672
render.Text(content = "" + nextStartDate, font = "tom-thumb"),
57-
render.Text(content = "" + nextAwayTeam + at + nextHomeTeam, font = "tom-thumb"),
73+
render.Animation(
74+
children = [
75+
render.Text(content = "" + nextStartTime, font = "tom-thumb"),
76+
render.Text(content = "" + nextStartTime.replace(":", " "), font = "tom-thumb"),
77+
],
78+
),
5879
],
5980
),
6081
),

0 commit comments

Comments
 (0)