don't try to even retrieve anything if navigator.onLine is false. call error directly