Meteor - Angular: URL routing and data loading issues at page load

Hello I’ve been trying to figure that out for hours.

I have a collection Cities containing a list of cities.

I’d like to achieve the following:

When a user comes to the site http://mysite.com, if the city is not stored in the session, I will detect his IP and find his city in the database. If no city, I will choose New York. Once the city is returned it’s saved in the user session. Then he is redirected http://mysite.com/his_city.

If a user type a wrong city, then the routing should send him to “/” and detect the correct city and redirect him following the above rule.

My main issue is that when the site load, the subscription is not over and the user experience is bad to wait. It would be better to load the data and then display the page.