I use a library called IP2Location which costs like $49 per year. There are other (free) libraries I think as well.
The "MultiSite" example is an example of using this, although of course you need to feed it your own csv file (from IP2Location).
the thing I showed in the webinar was "Location Services" where your browser may, or may not feed the server some location information - and of course the user is prompted with whether to share the location or not. For desktops I'd use the IP2Location approach, for mobile I'd use Location Services.
cheers
Bruce