Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tell users when the tool has problems #558

Open
2 tasks
NealHumphrey opened this issue Sep 18, 2017 · 0 comments
Open
2 tasks

Tell users when the tool has problems #558

NealHumphrey opened this issue Sep 18, 2017 · 0 comments
Assignees

Comments

@NealHumphrey
Copy link
Collaborator

NealHumphrey commented Sep 18, 2017

There are a couple situations where the tool might silently fail to load:

  • If users are on Internet Explorer or a browser that doesn't work with the WebGL that we rely on for Mapbox services.
  • If stuff goes wrong due to unanticipated bugs that cause loading to fail either intermittently or in certain circumstances, such as the CORS bug CORS / Timeout error #557

We should provide a minimum level of error-catching to notify users of potential problems, and direct them to contact us if they encounter problems.

Ideas (feel free to suggest alternatives/additions):

  • Set a general timeout on the page. If page loading has not finished in... 20 seconds?... then add a warning message to the page notifying them something went wrong. This can use the Semantic UI 'negative/error' message This should occur whether or not they have closed the welcome modal. Suggested text:
    "Uh oh. Something seems to have gone wrong. Try reloading the page using the refresh button in your browser, or by loading the page using a different browser (Chrome, Firefox). Note that Housing Insights does not work in Internet Explorer. If the problem continues, please let us know! Email us at [email protected] or open an issue on (Github)[link]"

This should catch any unanticipated errors.

  • Detect if the browser does not support WebGL (or, at a minimum, detect IE) and add warning message telling them to use a modern browser like Chrome or Firefox.

Triggering the cancellation of the timeout - as of the PR #549 the modal uses the filterViewLoaded state to indicate that loading is completed. For now, this state can trigger the cancellation of the general purpose timeout error. However, #550 adds a 'gate' to the router decoding that might provide us a better overall approach to having a universal method of deciding whether the loading of the page has successfully completed or not. If we switch to that, we can just swap out which event the cancelLoadingTimeout function is subscribed to.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants