undefined argument check tweaks
better fallback for browsers without HTML5 geolocation