Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialGordon Jiroux
8,728 Points"Forum Post" Dialog should be "Modal"
This "dialog box" should be "modal", meaning it should take an active (not passive) event to close; and should not close or allow any other UI interaction on the tab until an active event is triggered.
I've had to restart typing the same question 3 times (which will be a 4th once I'm done with this) because I had to switch to another browser tab and come back to this one. Upon leaving or switching back to this browser tab, the element loses focus and disappear. It should stay resident on the screen and visible until the "Submit", "Cancel", or "X" buttons are clicked/tapped, or at least repopulate upon hitting the "Ask a question button"...
This isn't a session issue as my time away from the tab was very short; and if it is, you should store a "draft" of the form question in a "volatile" table of the database, periodically, or iteratively updating the session object via a AJAX call to a web service so that if it takes someone more than 20 minutes to type a question, they have to switch tabs, or through some other means lose focus on the "wrapper" element of the form, all is not lost. Upon an active event being triggered, the row for the particular session object value in question can be deleted.
I am of course assuming you have more than 1 web server in a cluster and have already moved the session object storage away from the web server to a database to allow for incoming requests jumping web servers.