If the user has not yet accepted the TOS, they are asked to accept it before they can access any page. After they accept it, they are redirected back to the TOS page.
Usability wise this is not ideal. Better would be to redirect the user back to the stored path, i.e. the last page they tried to access before they were asked to log in.
The reason for this is that the stored page is overridden on every request, even when the user requests the TOS page where they are redirected to (served through the pages controller).
SOLUTION:
Skip the `:store_current_location` before action for ALL controllers in case the user is:
a) Logged in
b) Has not yet accepted the TOS
This way the actually desired page would automatically be remembered as the TOS acceptance controller already redirects there.
Share