Fantastic post - thanks!
To make Sander's notebook "standalone", the three lines at the start could be edited to use variable $GeoLocationCity:
location = $GeoLocationCity; (* set the location*)
tz = location["TimeZone"][[2]]; (* which timezone *)
locationname = location[[2, 1]]; (* name of the location for displaying purposes*)