better handling of user location settings